Compare commits
25 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
218ffa4fbb | ||
![]() |
dc72f88327 | ||
![]() |
6857e12d26 | ||
![]() |
665561e29e | ||
![]() |
ddb7e9ccc3 | ||
![]() |
c8d81ba3bb | ||
![]() |
ff9922ae05 | ||
![]() |
236dec1d35 | ||
![]() |
fb4695a0ee | ||
![]() |
8c64bfe4a9 | ||
![]() |
b05c76edf2 | ||
![]() |
ce904a7978 | ||
![]() |
94c6d7f506 | ||
![]() |
445c836252 | ||
![]() |
b23679a8c3 | ||
1aee05afa3 | |||
![]() |
8733ad20f5 | ||
![]() |
ee960db132 | ||
![]() |
683d587090 | ||
![]() |
6d6dc81135 | ||
![]() |
fa745dde8d | ||
![]() |
a227ed8c80 | ||
![]() |
033630977a | ||
![]() |
38639b50c7 | ||
b83c22601f |
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@ -15,7 +15,7 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Source Code
|
- name: Checkout Source Code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
24
.vscode/tasks.json
vendored
Normal file
24
.vscode/tasks.json
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"version": "2.0.0",
|
||||||
|
"tasks": [
|
||||||
|
{
|
||||||
|
"label": "Start Arma 3 Server",
|
||||||
|
"type": "process",
|
||||||
|
"command": "wscript.exe",
|
||||||
|
"args": [
|
||||||
|
"D:\\SteamLibrary\\steamapps\\common\\Arma 3\\start_serverhub_hidden.vbs"
|
||||||
|
],
|
||||||
|
"presentation": {
|
||||||
|
"reveal": "silent",
|
||||||
|
"panel": "shared",
|
||||||
|
"showReuseMessage": false,
|
||||||
|
"clear": true
|
||||||
|
},
|
||||||
|
"problemMatcher": [],
|
||||||
|
"group": {
|
||||||
|
"kind": "build",
|
||||||
|
"isDefault": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
@ -15,7 +15,7 @@ If something is broken, contact **J. Schmidt92** or open a new issue on **[Gitea
|
|||||||
|
|
||||||
</br>
|
</br>
|
||||||
|
|
||||||
**For more information, [read the Docs.](https://jschmidt92.github.io/ArmaDragonflyClient/#/)**
|
**For more information, [read the Docs.](https://docs.innovativedevsolutions.org/dragonfly)**
|
||||||
|
|
||||||
**For Roadmap, [visit the project page.](https://gitea.innovativedevsolutions.org/IDSolutions/dragonfly/projects)** _(WIP)_
|
**For Roadmap, [visit the project page.](https://gitea.innovativedevsolutions.org/IDSolutions/dragonfly/projects)** _(WIP)_
|
||||||
|
|
||||||
|
@ -3,6 +3,8 @@ PREP(delete);
|
|||||||
PREP(fetch);
|
PREP(fetch);
|
||||||
PREP(get);
|
PREP(get);
|
||||||
PREP(handler);
|
PREP(handler);
|
||||||
|
PREP(hashDelete);
|
||||||
|
PREP(hashDeleteId);
|
||||||
PREP(hashGet);
|
PREP(hashGet);
|
||||||
PREP(hashGetAll);
|
PREP(hashGetAll);
|
||||||
PREP(hashGetAllId);
|
PREP(hashGetAllId);
|
||||||
@ -20,8 +22,10 @@ PREP(listSet);
|
|||||||
PREP(pubSubFetch);
|
PREP(pubSubFetch);
|
||||||
PREP(pubSubHandler);
|
PREP(pubSubHandler);
|
||||||
PREP(processQueue);
|
PREP(processQueue);
|
||||||
|
PREP(publish);
|
||||||
PREP(saveDB);
|
PREP(saveDB);
|
||||||
PREP(scheduler);
|
PREP(scheduler);
|
||||||
PREP(set);
|
PREP(set);
|
||||||
PREP(setup);
|
PREP(setup);
|
||||||
|
PREP(subscribe);
|
||||||
PREP(test);
|
PREP(test);
|
@ -1 +1,6 @@
|
|||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
addMissionEventHandler ["Ended", {
|
||||||
|
"ArmaDragonflyClient" callExtension ["savedb", []];
|
||||||
|
INFO("Mission ended - forced save with backup");
|
||||||
|
}];
|
@ -39,10 +39,15 @@ params [["_taskType", "", [""]], ["_key", "", [""]], ["_keyField", "", [""]], ["
|
|||||||
|
|
||||||
private _task = [_taskType, _key, _keyField, _index, _value, _function, _call, _netId];
|
private _task = [_taskType, _key, _keyField, _index, _value, _function, _call, _netId];
|
||||||
|
|
||||||
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Added Task '%1' to Queue", _task];
|
#ifdef __ARMA__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Added Task '%1' to Queue", _task];
|
||||||
|
#endif
|
||||||
|
|
||||||
GVAR(taskQueue) pushBack _task;
|
GVAR(taskQueue) pushBack _task;
|
||||||
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue: %1", GVAR(taskQueue)];
|
|
||||||
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue Size: %1", count GVAR(taskQueue)];
|
#ifdef __ARMA__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue: %1", GVAR(taskQueue)];
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue Size: %1", count GVAR(taskQueue)];
|
||||||
|
#endif
|
||||||
|
|
||||||
if !(GVAR(isProcessing)) then { [] spawn FUNC(processQueue); };
|
if !(GVAR(isProcessing)) then { [] spawn FUNC(processQueue); };
|
@ -30,6 +30,12 @@
|
|||||||
|
|
||||||
params [["_key", "", [""]]];
|
params [["_key", "", [""]]];
|
||||||
|
|
||||||
if (_key == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_delete' Invalid Input for Key '%1'", _key]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_delete' Key: '%1'", _key];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_delete' Invalid Input for Key '%1'", _key];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["del", [_key]];
|
"ArmaDragonflyClient" callExtension ["del", [_key]];
|
@ -20,13 +20,15 @@
|
|||||||
["uniqueID", "function", "index", "indextotal", "datachunk", "call", "netId"]
|
["uniqueID", "function", "index", "indextotal", "datachunk", "call", "netId"]
|
||||||
*/
|
*/
|
||||||
|
|
||||||
diag_log _this;
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_fetch' Input: %1", _this];
|
||||||
|
#endif
|
||||||
|
|
||||||
params ["_uniqueID", "_function", "_index", "_total", "_datachunk", "_call", "_netId"];
|
params ["_uniqueID", "_function", "_index", "_total", "_datachunk", "_call", "_netId"];
|
||||||
|
|
||||||
private _dataString = "";
|
private _dataString = "";
|
||||||
private _index_array = [];
|
private _index_array = [];
|
||||||
private _count_total = -1;
|
private _count_total = 0;
|
||||||
|
|
||||||
dragonfly_db_fetch_array pushBackUnique [_uniqueID, _function, _index, _total, _datachunk, _call, _netId];
|
dragonfly_db_fetch_array pushBackUnique [_uniqueID, _function, _index, _total, _datachunk, _call, _netId];
|
||||||
|
|
||||||
@ -42,11 +44,13 @@ _count_total = {
|
|||||||
if (_count_total == _total) then {
|
if (_count_total == _total) then {
|
||||||
_index_array sort true;
|
_index_array sort true;
|
||||||
|
|
||||||
for "_i" from 0 to (_total - 1) do {
|
{
|
||||||
_dataString = _dataString + ((_index_array select _i) select 1);
|
_dataString = _dataString + (_x select 1);
|
||||||
};
|
} forEach _index_array;
|
||||||
|
|
||||||
diag_log _dataString;
|
#ifdef __ARMA__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_fetch' Data String: %1", _dataString];
|
||||||
|
#endif
|
||||||
|
|
||||||
[_uniqueID, _function, _call, (parseSimpleArray _dataString), _netId] call FUNC(handler);
|
[_uniqueID, _function, _call, (parseSimpleArray _dataString), _netId] call FUNC(handler);
|
||||||
|
|
||||||
|
@ -31,19 +31,38 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_key", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", nil, [""]]];
|
params [["_key", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_key == "" || _function == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_get' Invalid Input for Key '%1' or Function '%2'", _key, _function]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_get' Key: '%1', Function: '%2', Call: '%3', NetId: '%4'", _key, _function, _call, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || _function == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_get' Invalid Input for Key '%1' or Function '%2'", _key, _function];
|
||||||
|
};
|
||||||
|
|
||||||
|
private _return = "";
|
||||||
|
|
||||||
|
if (_netId != "") then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_get' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
|
||||||
if (_call) then {
|
if (_call) then {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["get", [_key, _function, _netId, _call]];
|
_return = "ArmaDragonflyClient" callExtension ["get", [_key, _function, _netId, _call]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["get", [_key, _function, _netId]];
|
_return = "ArmaDragonflyClient" callExtension ["get", [_key, _function, _netId]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["get", [_key, _function]];
|
#ifdef __A3__DEBUG__
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_get' Using current player";
|
||||||
};
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["get", [_key, _function, _call]];
|
||||||
|
} else {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["get", [_key, _function]];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
[(_return select 0)] call FUNC(scheduler);
|
@ -32,16 +32,46 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_uniqueID", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_data", [], [[]]], ["_netId", nil, [""]]];
|
params [["_uniqueID", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_data", [], [[]]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_function == "" || count _data == 0) exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_handler' Invalid Input for Function '%1' or Data '%2'", _function, _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_handler' UniqueID: '%1', Function: '%2', Call: '%3', Data: '%4', NetId: '%5'", _uniqueID, _function, _call, _data, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_function == "" || count _data == 0) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_handler' Invalid Input for Function '%1' or Data '%2'", _function, _data];
|
||||||
|
};
|
||||||
|
|
||||||
private _func = call compile format ["%1", _function];
|
private _func = call compile format ["%1", _function];
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
if (_netId != "") then {
|
||||||
private _target = objectFromNetId _netId;
|
private _target = objectFromNetId _netId;
|
||||||
|
|
||||||
if (_call) then { _data remoteExecCall [_function, _target, false]; } else { _data remoteExec [_function, _target, false]; };
|
if (!isNull _target) then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_handler' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_data remoteExecCall [_function, _target, false];
|
||||||
|
} else {
|
||||||
|
_data remoteExec [_function, _target, false];
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_handler' NetId '%1' resolved to null object, using local execution", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_data call _func;
|
||||||
|
} else {
|
||||||
|
_data spawn _func;
|
||||||
|
};
|
||||||
|
};
|
||||||
} else {
|
} else {
|
||||||
if (_call) then { _data call _func; } else { _data spawn _func; };
|
if (_call) then {
|
||||||
|
_data call _func;
|
||||||
|
} else {
|
||||||
|
_data spawn _func;
|
||||||
|
};
|
||||||
};
|
};
|
41
addons/db/functions/fnc_hashDelete.sqf
Normal file
41
addons/db/functions/fnc_hashDelete.sqf
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
#include "..\script_component.hpp"
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Function: dragonfly_db_fnc_hashDelete
|
||||||
|
* Author: Creedcoder, J.Schmidt
|
||||||
|
* Edit: 07.15.2024
|
||||||
|
* Copyright © 2024 Creedcoder, J.Schmidt, All rights reserved
|
||||||
|
*
|
||||||
|
* Do not edit without permission!
|
||||||
|
*
|
||||||
|
* This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
|
||||||
|
* To view a copy of this license, vist https://creativecommons.org/licenses/by-nc-sa/4.0/ or send a letter to Creative Commons,
|
||||||
|
* PO Box 1866, Mountain View, CA 94042
|
||||||
|
*
|
||||||
|
* [Description]
|
||||||
|
* Delete field in hash stored at key from DB.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: Name of stored field in hash <STRING> (default: "")
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* N/A
|
||||||
|
*
|
||||||
|
* Examples:
|
||||||
|
* ["loadout"] call dragonfly_db_fnc_hashDelete (Server or Singleplayer Only)
|
||||||
|
* ["loadout"] remoteExecCall ["dragonfly_db_fnc_hashDelete", 2, false] (Multiplayer Only)
|
||||||
|
*
|
||||||
|
* Public: Yes
|
||||||
|
*/
|
||||||
|
|
||||||
|
params [["_keyField", "", [""]]];
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashDelete' KeyField: '%1'", _keyField];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_keyField == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashDelete' Invalid Input for KeyField '%1'", _keyField];
|
||||||
|
};
|
||||||
|
|
||||||
|
"ArmaDragonflyClient" callExtension ["hdel", [_keyField]];
|
42
addons/db/functions/fnc_hashDeleteId.sqf
Normal file
42
addons/db/functions/fnc_hashDeleteId.sqf
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
#include "..\script_component.hpp"
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Function: dragonfly_db_fnc_hashDeleteId
|
||||||
|
* Author: Creedcoder, J.Schmidt
|
||||||
|
* Edit: 07.15.2024
|
||||||
|
* Copyright © 2024 Creedcoder, J.Schmidt, All rights reserved
|
||||||
|
*
|
||||||
|
* Do not edit without permission!
|
||||||
|
*
|
||||||
|
* This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
|
||||||
|
* To view a copy of this license, vist https://creativecommons.org/licenses/by-nc-sa/4.0/ or send a letter to Creative Commons,
|
||||||
|
* PO Box 1866, Mountain View, CA 94042
|
||||||
|
*
|
||||||
|
* [Description]
|
||||||
|
* Delete field in hash stored at key from DB.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: Key <STRING> (default: "")
|
||||||
|
* 1: Key Field <STRING> (default: "")
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* N/A
|
||||||
|
*
|
||||||
|
* Examples:
|
||||||
|
* [getPlayerUID player, "loadout"] call dragonfly_db_fnc_hashDeleteId (Server or Singleplayer Only)
|
||||||
|
* [getPlayerUID player, "loadout"] remoteExecCall ["dragonfly_db_fnc_hashDeleteId", 2, false] (Multiplayer Only)
|
||||||
|
*
|
||||||
|
* Public: Yes
|
||||||
|
*/
|
||||||
|
|
||||||
|
params [["_key", "", [""]], ["_keyField", "", [""]]];
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashDeleteId' Key: '%1', KeyField: '%2'", _key, _keyField];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || _keyField == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashDeleteId' Invalid Input for Key '%1' or KeyField '%2'", _key, _keyField];
|
||||||
|
};
|
||||||
|
|
||||||
|
"ArmaDragonflyClient" callExtension ["hdelid", [_key, _keyField]];
|
@ -31,19 +31,42 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_keyField", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", nil, [""]]];
|
params [["_keyField", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_keyField == "" || _function == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Invalid Input for KeyField '%1' or Function '%2'", _keyField, _function]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' KeyField: '%1', Function: '%2', Call: '%3', NetId: '%4'", _keyField, _function, _call, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_keyField == "" || _function == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Invalid Input for KeyField '%1' or Function '%2'", _keyField, _function];
|
||||||
|
};
|
||||||
|
|
||||||
|
private _return = "";
|
||||||
|
|
||||||
|
if (_netId != "") then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
|
||||||
if (_call) then {
|
if (_call) then {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _netId, _call]];
|
_return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _netId, _call]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _netId]];
|
_return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _netId]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function]];
|
#ifdef __A3__DEBUG__
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Using current player";
|
||||||
};
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _call]];
|
||||||
|
} else {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function]];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Return: '%1'", _return];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[(_return select 0)] call FUNC(scheduler);
|
@ -30,19 +30,42 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_function", "", [""]], ["_call", false, [false]], ["_netId", nil, [""]]];
|
params [["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_function isEqualTo "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAll' Invalid Input for Function '%1'", _function]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAll' Function: '%1', Call: '%2', NetId: '%3'", _function, _call, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_function isEqualTo "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAll' Invalid Input for Function '%1'", _function];
|
||||||
|
};
|
||||||
|
|
||||||
|
private _return = "";
|
||||||
|
|
||||||
|
if (_netId != "") then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAll' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
|
||||||
if (_call) then {
|
if (_call) then {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetall", [_function, _netId, _call]];
|
_return = "ArmaDragonflyClient" callExtension ["hgetall", [_function, _netId, _call]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetall", [_function, _netId]];
|
_return = "ArmaDragonflyClient" callExtension ["hgetall", [_function, _netId]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetall", [_function]];
|
#ifdef __A3__DEBUG__
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAll' Using current player";
|
||||||
};
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hgetall", [_function, _call]];
|
||||||
|
} else {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hgetall", [_function]];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAll' Return: '%1'", _return];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[(_return select 0)] call FUNC(scheduler);
|
@ -31,19 +31,42 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_key", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", nil, [""]]];
|
params [["_key", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_key == "" || _function == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAllId' Invalid Input for Key '%1' or Function '%2'", _key, _function]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAllId' Key: '%1', Function: '%2', Call: '%3', NetId: '%4'", _key, _function, _call, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || _function == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAllId' Invalid Input for Key '%1' or Function '%2'", _key, _function];
|
||||||
|
};
|
||||||
|
|
||||||
|
private _return = "";
|
||||||
|
|
||||||
|
if (_netId != "") then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAllId' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
|
||||||
if (_call) then {
|
if (_call) then {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetallid", [_key, _function, _netId, _call]];
|
_return = "ArmaDragonflyClient" callExtension ["hgetallid", [_key, _function, _netId, _call]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetallid", [_key, _function, _netId]];
|
_return = "ArmaDragonflyClient" callExtension ["hgetallid", [_key, _function, _netId]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetallid", [_key, _function]];
|
#ifdef __A3__DEBUG__
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAllId' Using current player";
|
||||||
};
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hgetallid", [_key, _function, _call]];
|
||||||
|
} else {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hgetallid", [_key, _function]];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetAllId' Return: '%1'", _return];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[(_return select 0)] call FUNC(scheduler);
|
@ -32,19 +32,42 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_key", "", [""]], ["_keyField", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", nil, [""]]];
|
params [["_key", "", [""]], ["_keyField", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_key == "" || _keyField == "" || _function == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetId' Invalid Input for Key '%1', KeyField '%2' or Function '%3'", _key, _keyField, _function]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetId' Key: '%1', KeyField: '%2', Function: '%3', Call: '%4', NetId: '%5'", _key, _keyField, _function, _call, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || _keyField == "" || _function == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetId' Invalid Input for Key '%1', KeyField '%2' or Function '%3'", _key, _keyField, _function];
|
||||||
|
};
|
||||||
|
|
||||||
|
private _return = "";
|
||||||
|
|
||||||
|
if (_netId != "") then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetId' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
|
||||||
if (_call) then {
|
if (_call) then {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetid", [_key, _keyField, _function, _netId, _call]];
|
_return = "ArmaDragonflyClient" callExtension ["hgetid", [_key, _keyField, _function, _netId, _call]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetid", [_key, _keyField, _function, _netId]];
|
_return = "ArmaDragonflyClient" callExtension ["hgetid", [_key, _keyField, _function, _netId]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["hgetid", [_key, _keyField, _function]];
|
#ifdef __A3__DEBUG__
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetId' Using current player";
|
||||||
};
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hgetid", [_key, _keyField, _function, _call]];
|
||||||
|
} else {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["hgetid", [_key, _keyField, _function]];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGetId' Return: '%1'", _return];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[(_return select 0)] call FUNC(scheduler);
|
@ -31,6 +31,12 @@
|
|||||||
|
|
||||||
params [["_keyField", "", [""]], ["_data", [], [[]]]];
|
params [["_keyField", "", [""]], ["_data", [], [[]]]];
|
||||||
|
|
||||||
if (_keyField == "" || count _data == 0) exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSet' Invalid Input for KeyField '%1' or Data '%2'", _keyField, _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSet' KeyField: '%1', Data: '%2'", _keyField, _data];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_keyField == "" || count _data == 0) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSet' Invalid Input for KeyField '%1' or Data '%2'", _keyField, _data];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["hset", [_keyField, _data]];
|
"ArmaDragonflyClient" callExtension ["hset", [_keyField, _data]];
|
@ -22,14 +22,20 @@
|
|||||||
* N/A
|
* N/A
|
||||||
*
|
*
|
||||||
* Examples:
|
* Examples:
|
||||||
* ["loadout", [getUnitLoadout player], "position", [getPosASLVisual player]] call dragonfly_db_fnc_hashSetBulk (Server or Singleplayer Only)
|
* [["loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] call dragonfly_db_fnc_hashSetBulk (Server or Singleplayer Only)
|
||||||
* ["loadout", [getUnitLoadout player], "position", [getPosASLVisual player]] remoteExecCall ["dragonfly_db_fnc_hashSetBulk", 2, false] (Multiplayer Only)
|
* [["loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] remoteExecCall ["dragonfly_db_fnc_hashSetBulk", 2, false] (Multiplayer Only)
|
||||||
*
|
*
|
||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_data", [], [[]]]];
|
params [["_data", [], [[]]]];
|
||||||
|
|
||||||
if (count _data == 0) exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetBulk' Invalid Input for Data '%1'", _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetBulk' Data: %1", _data];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (count _data == 0) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetBulk' Invalid Input for Data '%1'", _data];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["hset", _data];
|
"ArmaDragonflyClient" callExtension ["hset", _data];
|
@ -32,6 +32,12 @@
|
|||||||
|
|
||||||
params [["_key", "", [""]], ["_keyField", "", [""]], ["_data", [], [[]]]];
|
params [["_key", "", [""]], ["_keyField", "", [""]], ["_data", [], [[]]]];
|
||||||
|
|
||||||
if (_key == "" || _keyField == "" || count _data == 0) exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetId' Invalid Input for Key '%1', KeyField '%2' or Data '%3'", _key, _keyField, _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetId' Key: '%1', KeyField: '%2', Data: '%3'", _key, _keyField, _data];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || _keyField == "" || count _data == 0) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetId' Invalid Input for Key '%1', KeyField '%2' or Data '%3'", _key, _keyField, _data];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["hsetid", [_key, _keyField, _data]];
|
"ArmaDragonflyClient" callExtension ["hsetid", [_key, _keyField, _data]];
|
@ -22,14 +22,20 @@
|
|||||||
* N/A
|
* N/A
|
||||||
*
|
*
|
||||||
* Examples:
|
* Examples:
|
||||||
* [getPlayerUID player, "loadout", [getUnitLoadout player], "position", [getPosASLVisual player]] call dragonfly_db_fnc_hashSetIdBulk (Server or Singleplayer Only)
|
* [[getPlayerUID player, "loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] call dragonfly_db_fnc_hashSetIdBulk (Server or Singleplayer Only)
|
||||||
* [getPlayerUID player, "loadout", [getUnitLoadout player], "position", [getPosASLVisual player]] remoteExecCall ["dragonfly_db_fnc_hashSetIdBulk", 2, false] (Multiplayer Only)
|
* [[getPlayerUID player, "loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] remoteExecCall ["dragonfly_db_fnc_hashSetIdBulk", 2, false] (Multiplayer Only)
|
||||||
*
|
*
|
||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_data", [], [[]]]];
|
params [["_data", [], [[]]]];
|
||||||
|
|
||||||
if (count _data == 0) exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetIdBulk' Invalid Input for Data '%1'", _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetIdBulk' Data: %1", _data];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (count _data == 0) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashSetIdBulk' Invalid Input for Data '%1'", _data];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["hsetid", _data];
|
"ArmaDragonflyClient" callExtension ["hsetid", _data];
|
@ -31,6 +31,12 @@
|
|||||||
|
|
||||||
params [["_key", "", [""]], ["_data", [], [[]]]];
|
params [["_key", "", [""]], ["_data", [], [[]]]];
|
||||||
|
|
||||||
if (_key == "" || count _data == 0) exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listAdd' Invalid Input for Key '%1' or Data '%2'", _key, _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listAdd' Key: '%1', Data: '%2'", _key, _data];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || count _data == 0) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listAdd' Invalid Input for Key '%1' or Data '%2'", _key, _data];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["listadd", [_key, _data]];
|
"ArmaDragonflyClient" callExtension ["listadd", [_key, _data]];
|
@ -32,19 +32,42 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_key", "", [""]], ["_index", -1, [0]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", nil, [""]]];
|
params [["_key", "", [""]], ["_index", -1, [0]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_key == "" || _function == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listGet' Invalid Input for Key '%1' or Function '%2'", _key, _function]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listGet' Key: '%1', Index: '%2', Function: '%3', Call: '%4', NetId: '%5'", _key, _index, _function, _call, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || _function == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listGet' Invalid Input for Key '%1' or Function '%2'", _key, _function];
|
||||||
|
};
|
||||||
|
|
||||||
|
private _return = "";
|
||||||
|
|
||||||
|
if (_netId != "") then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listGet' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
|
||||||
if (_call) then {
|
if (_call) then {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["listidx", [_key, _index, _function, _netId, _call]];
|
_return = "ArmaDragonflyClient" callExtension ["listidx", [_key, _index, _function, _netId, _call]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["listidx", [_key, _index, _function, _netId]];
|
_return = "ArmaDragonflyClient" callExtension ["listidx", [_key, _index, _function, _netId]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["listidx", [_key, _index, _function]];
|
#ifdef __A3__DEBUG__
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_listGet' Using current player";
|
||||||
};
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["listidx", [_key, _index, _function, _call]];
|
||||||
|
} else {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["listidx", [_key, _index, _function]];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listGet' Return: '%1'", _return];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[(_return select 0)] call FUNC(scheduler);
|
@ -31,19 +31,42 @@
|
|||||||
* Public: Yes
|
* Public: Yes
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params [["_key", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", nil, [""]]];
|
params [["_key", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]];
|
||||||
|
|
||||||
if (_key == "" || _function == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listLoad' Invalid Input for Key '%1' or Function '%2'", _key, _function]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listLoad' Key: '%1', Function: '%2', Call: '%3', NetId: '%4'", _key, _function, _call, _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || _function == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listLoad' Invalid Input for Key '%1' or Function '%2'", _key, _function];
|
||||||
|
};
|
||||||
|
|
||||||
|
private _return = "";
|
||||||
|
|
||||||
|
if (_netId != "") then {
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listLoad' Using NetId: '%1'", _netId];
|
||||||
|
#endif
|
||||||
|
|
||||||
if ((!isNil "_netId") and (_netId isNotEqualTo "")) then {
|
|
||||||
if (_call) then {
|
if (_call) then {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["listrng", [_key, 0, -1, _function, _netId, _call]];
|
_return = "ArmaDragonflyClient" callExtension ["listrng", [_key, 0, -1, _function, _netId, _call]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["listrng", [_key, 0, -1, _function, _netId]];
|
_return = "ArmaDragonflyClient" callExtension ["listrng", [_key, 0, -1, _function, _netId]];
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
_return = "ArmaDragonflyClient" callExtension ["listrng", [_key, 0, -1, _function]];
|
#ifdef __A3__DEBUG__
|
||||||
[(_return select 0)] call FUNC(scheduler);
|
diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_listLoad' Using current player";
|
||||||
};
|
#endif
|
||||||
|
|
||||||
|
if (_call) then {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["listrng", [_key, 0, -1, _function, _call]];
|
||||||
|
} else {
|
||||||
|
_return = "ArmaDragonflyClient" callExtension ["listrng", [_key, 0, -1, _function]];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listLoad' Return: '%1'", _return];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[(_return select 0)] call FUNC(scheduler);
|
@ -31,6 +31,12 @@
|
|||||||
|
|
||||||
params [["_key", "", [""]], ["_index", -1, [0]]];
|
params [["_key", "", [""]], ["_index", -1, [0]]];
|
||||||
|
|
||||||
if (_key == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listRemove' Invalid Input for Key '%1'", _key]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listRemove' Key: '%1', Index: '%2'", _key, _index];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listRemove' Invalid Input for Key '%1'", _key];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["listrem", [_key, _index]];
|
"ArmaDragonflyClient" callExtension ["listrem", [_key, _index]];
|
@ -32,6 +32,12 @@
|
|||||||
|
|
||||||
params [["_key", "", [""]], ["_index", -1, [0]], ["_data", [], [[]]]];
|
params [["_key", "", [""]], ["_index", -1, [0]], ["_data", [], [[]]]];
|
||||||
|
|
||||||
if (_key == "" || count _data == 0) exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listSet' Invalid Input for Key '%1' or Data '%2'", _key, _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listSet' Key: '%1', Index: '%2', Data: '%3'", _key, _index, _data];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || count _data == 0) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_listSet' Invalid Input for Key '%1' or Data '%2'", _key, _data];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["listset", [_key, _index, _data]];
|
"ArmaDragonflyClient" callExtension ["listset", [_key, _index, _data]];
|
@ -41,25 +41,137 @@ while { count GVAR(taskQueue) > 0} do {
|
|||||||
private _call = _task select 6;
|
private _call = _task select 6;
|
||||||
private _netId = _task select 7;
|
private _netId = _task select 7;
|
||||||
|
|
||||||
diag_log text format ["Initializing Task: %1", _task];
|
#ifdef __ARMA__DEBUG__
|
||||||
|
diag_log text format ["Initializing Task: %1", _task];
|
||||||
|
#endif
|
||||||
|
|
||||||
switch (_taskType) do {
|
switch (_taskType) do {
|
||||||
case "get": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _function, _call, _netId] call FUNC(get); };
|
case "get": {
|
||||||
case "set": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _value] call FUNC(set); };
|
#ifdef __ARMA_DEBUG__
|
||||||
case "del": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key] call FUNC(delete); };
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
case "hget": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_keyField, _function, _call, _netId] call FUNC(hashGet); };
|
#endif
|
||||||
case "hgetid": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _keyField, _function, _call, _netId] call FUNC(hashGetId); };
|
|
||||||
case "hgetall": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_function, _call, _netId] call FUNC(hashGetAll); };
|
[_key, _function, _call, _netId] call FUNC(get);
|
||||||
case "hgetallid": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _function, _call, _netId] call FUNC(hashGetAllId); };
|
};
|
||||||
case "hset": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_keyField, _value] call FUNC(hashSet); };
|
case "set": {
|
||||||
case "hsetbulk": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_value] call FUNC(hashSetBulk); };
|
#ifdef __ARMA_DEBUG__
|
||||||
case "hsetid": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _keyField, _value] call FUNC(hashSetId); };
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
case "hsetidbulk": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_value] call FUNC(hashSetIdBulk); };
|
#endif
|
||||||
case "listadd": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _value] call FUNC(listAdd); };
|
|
||||||
case "listidx": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _index, _function, _call, _netId] call FUNC(listGet); };
|
[_key, _value] call FUNC(set);
|
||||||
case "listrng": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _function, _call, _netId] call FUNC(listLoad); };
|
};
|
||||||
case "listrem": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _index] call FUNC(listRemove); };
|
case "del": {
|
||||||
case "listset": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _index, _value] call FUNC(listSet); };
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key] call FUNC(delete);
|
||||||
|
};
|
||||||
|
case "hget": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_keyField, _function, _call, _netId] call FUNC(hashGet);
|
||||||
|
};
|
||||||
|
case "hgetid": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _keyField, _function, _call, _netId] call FUNC(hashGetId);
|
||||||
|
};
|
||||||
|
case "hgetall": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_function, _call, _netId] call FUNC(hashGetAll);
|
||||||
|
};
|
||||||
|
case "hgetallid": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _function, _call, _netId] call FUNC(hashGetAllId);
|
||||||
|
};
|
||||||
|
case "hset": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_keyField, _value] call FUNC(hashSet);
|
||||||
|
};
|
||||||
|
case "hsetbulk": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_value] call FUNC(hashSetBulk);
|
||||||
|
};
|
||||||
|
case "hsetid": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _keyField, _value] call FUNC(hashSetId);
|
||||||
|
};
|
||||||
|
case "hsetidbulk": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_value] call FUNC(hashSetIdBulk);
|
||||||
|
};
|
||||||
|
case "hdel": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_keyField] call FUNC(hashDelete);
|
||||||
|
};
|
||||||
|
case "hdelid": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _keyField] call FUNC(hashDeleteId);
|
||||||
|
};
|
||||||
|
case "listadd": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _value] call FUNC(listAdd);
|
||||||
|
};
|
||||||
|
case "listidx": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _index, _function, _call, _netId] call FUNC(listGet);
|
||||||
|
};
|
||||||
|
case "listrng": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _function, _call, _netId] call FUNC(listLoad);
|
||||||
|
};
|
||||||
|
case "listrem": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _index] call FUNC(listRemove);
|
||||||
|
};
|
||||||
|
case "listset": {
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
[_key, _index, _value] call FUNC(listSet);
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
sleep 1;
|
sleep 1;
|
||||||
|
@ -20,7 +20,9 @@
|
|||||||
["uniqueID", "evetnType", "eventName", "index", "indextotal", "datachunk", "target"]
|
["uniqueID", "evetnType", "eventName", "index", "indextotal", "datachunk", "target"]
|
||||||
*/
|
*/
|
||||||
|
|
||||||
diag_log _this;
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_pubSubFetch' Data: %1", _this];
|
||||||
|
#endif
|
||||||
|
|
||||||
params ["_uniqueID", "_eventType", "_eventName", "_index", "_total", "_datachunk", "_target"];
|
params ["_uniqueID", "_eventType", "_eventName", "_index", "_total", "_datachunk", "_target"];
|
||||||
|
|
||||||
@ -46,7 +48,9 @@ if (_count_total == _total) then {
|
|||||||
_dataString = _dataString + ((_index_array select _i) select 1);
|
_dataString = _dataString + ((_index_array select _i) select 1);
|
||||||
};
|
};
|
||||||
|
|
||||||
diag_log _dataString;
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_pubSubFetch' Data String: %1", _dataString];
|
||||||
|
#endif
|
||||||
|
|
||||||
[_uniqueID, _eventType, _eventName, (parseSimpleArray _dataString), _target] call FUNC(pubSubHandler);
|
[_uniqueID, _eventType, _eventName, (parseSimpleArray _dataString), _target] call FUNC(pubSubHandler);
|
||||||
|
|
||||||
|
@ -34,6 +34,10 @@
|
|||||||
|
|
||||||
params [["_uniqueID", "", [""]], ["_eventType", "", [""]], ["_eventName", "", [""]], ["_data", [], [[]]], ["_target", "", [""]]];
|
params [["_uniqueID", "", [""]], ["_eventType", "", [""]], ["_eventName", "", [""]], ["_data", [], [[]]], ["_target", "", [""]]];
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_pubSubHandler' Data: %1", _this];
|
||||||
|
#endif
|
||||||
|
|
||||||
switch (_eventType) do {
|
switch (_eventType) do {
|
||||||
case "global": {
|
case "global": {
|
||||||
[_eventName, _data] call CFUNC(globalEvent);
|
[_eventName, _data] call CFUNC(globalEvent);
|
||||||
|
53
addons/db/functions/fnc_publish.sqf
Normal file
53
addons/db/functions/fnc_publish.sqf
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
#include "..\script_component.hpp"
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Function: dragonfly_db_fnc_publish
|
||||||
|
* Author: Creedcoder, J. Schmidt
|
||||||
|
* Edit: 07.15.2024
|
||||||
|
* Copyright © 2024 Creedcoder, J. Schmidt, All rights reserved
|
||||||
|
*
|
||||||
|
* Do not edit without permission!
|
||||||
|
*
|
||||||
|
* This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
|
||||||
|
* To view a copy of this license, vist https://creativecommons.org/licenses/by-nc-sa/4.0/ or send a letter to Creative Commons,
|
||||||
|
* PO Box 1866, Mountain View, CA 94042
|
||||||
|
*
|
||||||
|
* [Description]
|
||||||
|
* Publish a message to a DragonflyDB channel.
|
||||||
|
* The message will be routed through the CBA event system based on the subscription event type.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: STRING - Channel name to publish to (default: "")
|
||||||
|
* 1: ARRAY|STRING|NUMBER|BOOL - Data to publish (default: [])
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* BOOLEAN - True if successful, false otherwise
|
||||||
|
*
|
||||||
|
* Examples:
|
||||||
|
* ["global_chat", "Hello world!"] call dragonfly_db_fnc_publish
|
||||||
|
* ["mission_updates", ["task_01", "SUCCEEDED", [2, 3, 4]]] call dragonfly_db_fnc_publish
|
||||||
|
*
|
||||||
|
* Public: Yes
|
||||||
|
*/
|
||||||
|
|
||||||
|
params [["_channel", "", [""]], ["_message", [], [[], "", 0, true]]];
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_publish' Channel: '%1', Message: '%2'", _channel, _message];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_channel isEqualTo "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_publish' Invalid Input for Channel '%1'", _channel];
|
||||||
|
false
|
||||||
|
};
|
||||||
|
|
||||||
|
private _args = [_channel, _message];
|
||||||
|
private _formattedArgs = _args apply { if (_x isEqualType "") then { str _x } else { _x } };
|
||||||
|
private _extensionArgs = _formattedArgs joinString ",";
|
||||||
|
private _result = "ArmaDragonflyClient" callExtension ["publish", [_extensionArgs]];
|
||||||
|
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_publish' Published message to channel '%1': '%2'", _channel, _message];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
true
|
@ -31,6 +31,12 @@
|
|||||||
|
|
||||||
params [["_key", "", [""]], ["_data", "", [[]]]];
|
params [["_key", "", [""]], ["_data", "", [[]]]];
|
||||||
|
|
||||||
if (_key == "" || _data == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_set' Invalid Input for Key '%1' or Data '%2'", _key, _data]; };
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_set' Key: '%1', Data: '%2'", _key, _data];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_key == "" || isNil "_data") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_set' Invalid Input for Key '%1' or Data '%2'", _key, _data];
|
||||||
|
};
|
||||||
|
|
||||||
"ArmaDragonflyClient" callExtension ["set", [_key, _data]];
|
"ArmaDragonflyClient" callExtension ["set", [_key, _data]];
|
73
addons/db/functions/fnc_subscribe.sqf
Normal file
73
addons/db/functions/fnc_subscribe.sqf
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
#include "..\script_component.hpp"
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Function: dragonfly_db_fnc_subscribe
|
||||||
|
* Author: J. Schmidt
|
||||||
|
* Edit: 07.15.2024
|
||||||
|
* Copyright © 2024 J. Schmidt, All rights reserved
|
||||||
|
*
|
||||||
|
* Do not edit without permission!
|
||||||
|
*
|
||||||
|
* This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
|
||||||
|
* To view a copy of this license, vist https://creativecommons.org/licenses/by-nc-sa/4.0/ or send a letter to Creative Commons,
|
||||||
|
* PO Box 1866, Mountain View, CA 94042
|
||||||
|
*
|
||||||
|
* [Description]
|
||||||
|
* Subscribe to a DragonflyDB channel for real-time updates.
|
||||||
|
* Uses CBA event system for message handling.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: STRING - Channel name to subscribe to (default: "")
|
||||||
|
* 1: STRING - Event type: "global", "local", "server", or "remote" (default: "global")
|
||||||
|
* 2: STRING - CBA event name to trigger when messages are received (default: "")
|
||||||
|
* 3: STRING - NetID of target to receive messages (only needed for "remote" event type) (default: nil)
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* BOOLEAN - True if successful, false otherwise
|
||||||
|
*
|
||||||
|
* Examples:
|
||||||
|
* ["global_chat", "global", "myChatEvent"] call dragonfly_db_fnc_subscribe
|
||||||
|
* ["player_notifications", "remote", "playerNotificationEvent", netId player] call dragonfly_db_fnc_subscribe
|
||||||
|
*
|
||||||
|
* Public: Yes
|
||||||
|
*/
|
||||||
|
|
||||||
|
params [["_channel", "", [""]], ["_eventType", "global", [""]], ["_eventName", "", [""]], ["_target", nil, [""]]];
|
||||||
|
|
||||||
|
#ifdef __A3__DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Channel: '%1', Event Type: '%2', Event Name: '%3', Target: '%4'", _channel, _eventType, _eventName, _target];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (_channel isEqualTo "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Invalid Input for Channel '%1'", _channel];
|
||||||
|
false
|
||||||
|
};
|
||||||
|
|
||||||
|
if (!(_eventType in ["global", "local", "server", "remote"])) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Invalid Input for Event Type '%1'", _eventType];
|
||||||
|
false
|
||||||
|
};
|
||||||
|
|
||||||
|
if (_eventType isEqualTo "remote" && (isNil "_target" || _target isEqualTo "")) exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Invalid Input for Target NetID '%1'", _target];
|
||||||
|
false
|
||||||
|
};
|
||||||
|
|
||||||
|
if (_eventName isEqualTo "") exitWith {
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Invalid Input for Event Name '%1'", _eventName];
|
||||||
|
false
|
||||||
|
};
|
||||||
|
|
||||||
|
private _args = [_channel, _eventType, _eventName];
|
||||||
|
|
||||||
|
if (!isNil "_target") then { _args pushBack _target; };
|
||||||
|
|
||||||
|
private _formattedArgs = _args apply { if (_x isEqualType "") then { str _x } else { _x } };
|
||||||
|
private _extensionArgs = _formattedArgs joinString ",";
|
||||||
|
private _result = "ArmaDragonflyClient" callExtension ["subscribe", [_extensionArgs]];
|
||||||
|
|
||||||
|
#ifdef __ARMA_DEBUG__
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Subscribed to channel '%1' with event type '%2' and event name '%3'", _channel, _eventType, _eventName];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
true
|
@ -31,4 +31,5 @@
|
|||||||
_res = _this;
|
_res = _this;
|
||||||
dragonfly_db_test = _res;
|
dragonfly_db_test = _res;
|
||||||
|
|
||||||
hint format ["%1", _res];
|
hint format ["%1", _res];
|
||||||
|
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_test' Result: '%1'", _res];
|
@ -1,4 +1,4 @@
|
|||||||
#define MAJOR 1
|
#define MAJOR 1
|
||||||
#define MINOR 0
|
#define MINOR 0
|
||||||
#define PATCH 0
|
#define PATCH 0
|
||||||
#define BUILD 6
|
#define BUILD 16
|
||||||
|
@ -0,0 +1,84 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue" xml:lang="en-US">
|
||||||
|
<title>processQueue</title>
|
||||||
|
<indexterm><primary>processQueue</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md119">
|
||||||
|
<title>autotoc_md119</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Process Queue icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md120">
|
||||||
|
<title>excerpt: Processes a queue of tasks to be executed.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md121">
|
||||||
|
<title>dragonfly_db_fnc_processQueue</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md122">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Processes the queue of pending database tasks sequentially. This function executes each task in the queue one by one, handling various database operations based on the task type. It continues processing until the queue is empty.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md123">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[] spawn dragonfly_db_fnc_processQueue
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md124">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para>None. This function does not require any parameters.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md125">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The function processes tasks in the queue and updates the processing state.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md126">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md127">
|
||||||
|
<title>Start processing the queue manually:</title>
|
||||||
|
<para><literallayout><computeroutput>[] spawn dragonfly_db_fnc_processQueue;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md128">
|
||||||
|
<title>Trigger queue processing from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>[] remoteExec ["dragonfly_db_fnc_processQueue", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md129">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Sets <computeroutput>GVAR(isProcessing)</computeroutput> to true while running and false when complete</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Processes one task per second to prevent overloading</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Handles a wide range of database operations including:<itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Key-value operations (get, set, delete)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Hash table operations (hget, hset, hgetall, etc.)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>List operations (listadd, listrng, listset, etc.)</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Automatically started by <computeroutput>dragonfly_db_fnc_addTask</computeroutput> when new tasks are added</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Each task execution is logged for debugging purposes</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Should typically be spawned rather than called to avoid blocking</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md130">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_addTask</computeroutput>: Adds tasks to the queue for processing</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_handler</computeroutput>: Handles data returned from database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Manages callback responses from the database</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue_1autotoc_md131">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">Add Task</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">Handler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">Init</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">Print Addon Name</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">Process Queue</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">Scheduler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">Test</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,130 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set" xml:lang="en-US">
|
||||||
|
<title>hashSet</title>
|
||||||
|
<indexterm><primary>hashSet</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md219">
|
||||||
|
<title>autotoc_md219</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Set icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md220">
|
||||||
|
<title>excerpt: Set a field value in the current client's hash table in DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md221">
|
||||||
|
<title>dragonfly_db_fnc_hashSet</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md222">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Sets the value of a specified field in the hash table associated with the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <computeroutput>hashSetId</computeroutput> which requires manually specifying an ID. It allows storing various data types (arrays, strings, numbers, or booleans) in a field of the client-specific hash structure.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md223">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_keyField, _data] call dragonfly_db_fnc_hashSet
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md224">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_keyField</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the field in the hash to set </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_data</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array, String, Number, or Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The value to store in the hash field </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md225">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously to store the data.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md226">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md227">
|
||||||
|
<title>Store a player's loadout:</title>
|
||||||
|
<para><literallayout><computeroutput>["loadout", [getUnitLoadout player]] call dragonfly_db_fnc_hashSet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md228">
|
||||||
|
<title>Store player preferences:</title>
|
||||||
|
<para><literallayout><computeroutput>["settings", [true, 30, "normal"]] call dragonfly_db_fnc_hashSet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md229">
|
||||||
|
<title>Store data from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>["clientInfo", [name player, getPlayerUID player]] remoteExecCall ["dragonfly_db_fnc_hashSet", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md230">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Stores a single field-value pair in the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Both the field name and data parameters are required and validated</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the field already exists, its value will be overwritten</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Supports various data types: arrays, strings, numbers, and booleans</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function automatically determines which hash table to use based on the caller's identity</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Use <computeroutput>hashSetId</computeroutput> when you need to specify a particular hash table by ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Complex data structures should be serialized into arrays</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The operation is executed immediately and synchronously</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md231">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetId</computeroutput>: Sets a field value in a specific hash table (when you need to specify the ID)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGet</computeroutput>: Retrieves a field value from the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAll</computeroutput>: Retrieves all fields from the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetBulk</computeroutput>: Sets multiple fields in the current client's hash table</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_1autotoc_md232">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,109 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler" xml:lang="en-US">
|
||||||
|
<title>scheduler</title>
|
||||||
|
<indexterm><primary>scheduler</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md136">
|
||||||
|
<title>autotoc_md136</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Scheduler icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md137">
|
||||||
|
<title>excerpt: Scheduled Environment for extension.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md138">
|
||||||
|
<title>dragonfly_db_fnc_scheduler</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md139">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Manages the callback system for the ArmaDragonflyClient extension. This function receives task IDs from the extension's asynchronous callbacks, parses them, and registers them in a hashmap for later processing. It acts as the bridge between the extension's asynchronous operations and the game's execution environment.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md140">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_taskID] call dragonfly_db_fnc_scheduler
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md141">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_taskID</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Task identifier returned from extension callback </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md142">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The function registers the task ID in a hashmap for later processing.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md143">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md144">
|
||||||
|
<title>Process a callback from the extension:</title>
|
||||||
|
<para><literallayout><computeroutput>["1689524160123_get"] call dragonfly_db_fnc_scheduler;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md145">
|
||||||
|
<title>Forward a callback to the server:</title>
|
||||||
|
<para><literallayout><computeroutput>["1689524160123_hgetall"] remoteExecCall ["dragonfly_db_fnc_scheduler", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md146">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Parses the task ID to extract the timestamp and operation type</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Registers the task in a type-specific hashmap using the mission namespace</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Each operation type (get, hgetall, etc.) has its own hashmap for tracking</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The format of task IDs is typically: <computeroutput>[timestamp]_[operation]</computeroutput></para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function is automatically called by the extension callback mechanism</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Creates hashmaps on demand if they don't already exist</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Critical for handling asynchronous database operations</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md147">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_fetch</computeroutput>: Assembles data chunks for large datasets</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_handler</computeroutput>: Processes the data retrieved from database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_processQueue</computeroutput>: Executes queued database operations</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler_1autotoc_md148">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">Add Task</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">Handler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">Init</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">Print Addon Name</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">Process Queue</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">Scheduler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">Test</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,122 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove" xml:lang="en-US">
|
||||||
|
<title>listRemove</title>
|
||||||
|
<indexterm><primary>listRemove</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md318">
|
||||||
|
<title>autotoc_md318</title>
|
||||||
|
<para>title: ArmaDragonflyClient - List Remove icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md319">
|
||||||
|
<title>excerpt: Remove an element from a list stored at a key in DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md320">
|
||||||
|
<title>dragonfly_db_fnc_listRemove</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md321">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Removes a specific element from a list stored at a specified key in the DragonflyClient database. This function allows for precise control over list content by targeting individual elements by their index, without affecting other elements in the list. This is particularly useful for removing outdated or no longer needed entries.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md322">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _index] call dragonfly_db_fnc_listRemove
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md323">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para>_key </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The key identifying the list from which to remove an element </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para>_index </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Number </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The zero-based index of the element to remove from the list </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>-1 </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md324">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously to remove the element immediately.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md325">
|
||||||
|
<title>Examples</title>
|
||||||
|
<para><emphasis role="bold">Remove the first element from an event log:</emphasis> <literallayout><computeroutput>["eventLog", 0] call dragonfly_db_fnc_listRemove;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
|
||||||
|
<para><emphasis role="bold">Remove a specific player record:</emphasis> <literallayout><computeroutput>["playerRecords", 5] call dragonfly_db_fnc_listRemove;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
|
||||||
|
<para><emphasis role="bold">Remove an element from a multiplayer environment:</emphasis> <literallayout><computeroutput>["sharedData", 2] remoteExecCall ["dragonfly_db_fnc_listRemove", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md326">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>This function removes only the element at the specified index. All other elements remain unchanged, though their indices may shift.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The index is zero-based, meaning the first element is at index 0, the second at index 1, and so on.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If an invalid index is provided (negative or exceeding the list length), the operation will not remove any elements.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_key</computeroutput> parameter must be a non-empty string, otherwise the function will exit without performing any action.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>After removing an element, all subsequent elements shift down by one index to maintain a contiguous list.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The removal operation is permanent and cannot be undone except by re-adding the element.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All list operations are logged for debugging purposes.</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md327">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listAdd</computeroutput>: Adds an element to a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listGet</computeroutput>: Retrieves a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listLoad</computeroutput>: Retrieves a range of elements from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listSet</computeroutput>: Replaces a specific element in a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove_1autotoc_md328">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add">List Add</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get">List Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load">List Load</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove">List Remove</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set">List Set</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,152 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id" xml:lang="en-US">
|
||||||
|
<title>hashGetAllId</title>
|
||||||
|
<indexterm><primary>hashGetAllId</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md191">
|
||||||
|
<title>autotoc_md191</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Get All ID icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md192">
|
||||||
|
<title>excerpt: Get all fields and values from the hash stored at key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md193">
|
||||||
|
<title>dragonfly_db_fnc_hashGetAllId</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md194">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Retrieves all fields and values from a specific hash table identified by its key. This function returns the complete hash table data for a specific ID through a callback function, allowing access to all stored key-value pairs associated with that ID. It's particularly useful for retrieving player-specific or entity-specific hash data.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md195">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _function, _call, _netId] call dragonfly_db_fnc_hashGetAllId
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md196">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Identifier of the hash table to retrieve </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the function to receive the retrieved data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to receive the data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md197">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The retrieved data is passed to the specified callback function asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md198">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md199">
|
||||||
|
<title>Retrieve a player's complete hash data:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGetAllId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md200">
|
||||||
|
<title>Retrieve vehicle data with synchronous callback:</title>
|
||||||
|
<para><literallayout><computeroutput>["vehicle_123", "dragonfly_db_fnc_processVehicleData", true] call dragonfly_db_fnc_hashGetAllId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md201">
|
||||||
|
<title>Retrieve data and send it to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGetAllId", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md202">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Returns the complete hash table with all fields and values as a nested array</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Both the key and callback function parameters are required and validated</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The data is retrieved asynchronously through the extension's callback system</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>When a netId is provided, the data is sent to that specific client</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function retrieves from a specific hash table identified by <computeroutput>_key</computeroutput> - use <computeroutput>hashGetAll</computeroutput> for the global hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Player UIDs are commonly used as keys to store player-specific data</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>For large hash tables, retrieving all data may impact performance</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md203">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAll</computeroutput>: Retrieves all fields from the global hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetId</computeroutput>: Retrieves a specific field value from a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGet</computeroutput>: Retrieves a specific field value from the global hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetId</computeroutput>: Sets a field value in a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id_1autotoc_md204">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,162 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id" xml:lang="en-US">
|
||||||
|
<title>hashGetId</title>
|
||||||
|
<indexterm><primary>hashGetId</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md205">
|
||||||
|
<title>autotoc_md205</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Get ID icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md206">
|
||||||
|
<title>excerpt: Get the value associated with field in hash stored at key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md207">
|
||||||
|
<title>dragonfly_db_fnc_hashGetId</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md208">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Retrieves the value of a specific field from a hash table identified by its key. This function allows targeted access to individual fields within a specific hash table, making it ideal for accessing particular attributes of player or entity data. The retrieved data is returned through a callback function.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md209">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _keyField, _function, _call, _netId] call dragonfly_db_fnc_hashGetId
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md210">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Identifier of the hash table </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_keyField</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the field in the hash to retrieve </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the function to receive the retrieved data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to receive the data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md211">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The retrieved data is passed to the specified callback function asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md212">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md213">
|
||||||
|
<title>Retrieve a player's loadout field:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "loadout", "dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGetId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md214">
|
||||||
|
<title>Retrieve a specific vehicle property with synchronous callback:</title>
|
||||||
|
<para><literallayout><computeroutput>["vehicle_123", "fuel", "dragonfly_db_fnc_processFuelData", true] call dragonfly_db_fnc_hashGetId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md215">
|
||||||
|
<title>Retrieve data and send it to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "stats", "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGetId", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md216">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Retrieves a single field value from a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All three primary parameters (key, keyField, and function) are required and validated</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The data is retrieved asynchronously through the extension's callback system</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>When a netId is provided, the data is sent to that specific client</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function targets both a specific hash table (<computeroutput>_key</computeroutput>) and a specific field (<computeroutput>_keyField</computeroutput>)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>More efficient than retrieving all hash fields when only one is needed</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Player UIDs are commonly used as keys to store player-specific data</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md217">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGet</computeroutput>: Retrieves a field value from the global hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAllId</computeroutput>: Retrieves all fields from a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAll</computeroutput>: Retrieves all fields from the global hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetId</computeroutput>: Sets a field value in a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id_1autotoc_md218">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,132 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set" xml:lang="en-US">
|
||||||
|
<title>listSet</title>
|
||||||
|
<indexterm><primary>listSet</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md329">
|
||||||
|
<title>autotoc_md329</title>
|
||||||
|
<para>title: ArmaDragonflyClient - List Set icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md330">
|
||||||
|
<title>excerpt: Set an element in a list stored at a key in DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md331">
|
||||||
|
<title>dragonfly_db_fnc_listSet</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md332">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Updates or sets the value of a specific element at a given index in a list stored at a specified key in the DragonflyClient database. This function allows for precise modification of list contents by targeting individual elements without affecting other elements in the list. It is particularly useful for updating record information, modifying configuration data, or correcting entries.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md333">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _index, _data] call dragonfly_db_fnc_listSet
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md334">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para>_key </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The key identifying the list in which to set an element </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para>_index </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Number </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The zero-based index of the element to set in the list </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>-1 </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para>_data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array/String/Number/Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The value to set at the specified index </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md335">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously to update the element immediately.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md336">
|
||||||
|
<title>Examples</title>
|
||||||
|
<para><emphasis role="bold">Update an event log entry:</emphasis> <literallayout><computeroutput>["eventLog", 0, ["Updated event information"]] call dragonfly_db_fnc_listSet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
|
||||||
|
<para><emphasis role="bold">Modify player statistics:</emphasis> <literallayout><computeroutput>["playerStats", 3, [name player, score player, alive player]] call dragonfly_db_fnc_listSet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
|
||||||
|
<para><emphasis role="bold">Update configuration in multiplayer:</emphasis> <literallayout><computeroutput>["missionConfig", 1, ["difficulty", "veteran"]] remoteExecCall ["dragonfly_db_fnc_listSet", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md337">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>This function updates only the element at the specified index. All other elements remain unchanged.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The index is zero-based, meaning the first element is at index 0, the second at index 1, and so on.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the specified index does not exist in the list, the operation may fail or have no effect.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Both the <computeroutput>_key</computeroutput> parameter and <computeroutput>_data</computeroutput> parameter must be valid (non-empty string for key, non-nil for data), otherwise the function will exit without performing any action.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The function supports various data types, including arrays, strings, numbers, and booleans.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The update operation is permanent and will overwrite any previous value at the specified index.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All list operations are logged for debugging purposes.</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md338">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listAdd</computeroutput>: Adds an element to a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listGet</computeroutput>: Retrieves a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listLoad</computeroutput>: Retrieves a range of elements from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listRemove</computeroutput>: Removes a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set_1autotoc_md339">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add">List Add</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get">List Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load">List Load</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove">List Remove</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set">List Set</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,62 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save" xml:lang="en-US">
|
||||||
|
<title>save</title>
|
||||||
|
<indexterm><primary>save</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md40">
|
||||||
|
<title>autotoc_md40</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Save DB icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md41">
|
||||||
|
<title>excerpt: Save DB to disc.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md42">
|
||||||
|
<title>dragonfly_db_fnc_save</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md43">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Saves the entire database to disk storage. This function persists all data (key-value pairs, hash tables, and lists) to a file, allowing it to be retrieved later even after server restart.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md44">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[] call dragonfly_db_fnc_save
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md45">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para>None. The function saves the database without any parameters.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md46">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously and saves the database immediately.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md47">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md48">
|
||||||
|
<title>Save the database without creating a backup:</title>
|
||||||
|
<para><literallayout><computeroutput>[] call dragonfly_db_fnc_save;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md49">
|
||||||
|
<title>Call the save function remotely from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>[] remoteExecCall ["dragonfly_db_fnc_save", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md50">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>This function should be called periodically to ensure data persistence</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Saving is a resource-intensive operation, so it shouldn't be called too frequently</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Consider saving before mission end or during low-activity periods</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md51">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para>None.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2save_1autotoc_md52">
|
||||||
|
<title>Links</title>
|
||||||
|
<para>None. </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
124
api/docbook/d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.xml
Normal file
124
api/docbook/d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.xml
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get" xml:lang="en-US">
|
||||||
|
<title>get</title>
|
||||||
|
<indexterm><primary>get</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md23">
|
||||||
|
<title>autotoc_md23</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Get Key icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md24">
|
||||||
|
<title>excerpt: Get the value of stored key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md25">
|
||||||
|
<title>dragonfly_db_fnc_get</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md26">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Retrieves the value of a stored key from the database. This function performs an asynchronous request to the database and passes the retrieved data to the specified callback function.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md27">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _function, _call, _netId] call dragonfly_db_fnc_get
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md28">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="3" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the stored key to retrieve from the database </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the function to call when data is retrieved </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to whom the data should be returned </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md29">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. When data is retrieved, it will be passed to the specified function. The operation runs asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md30">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md31">
|
||||||
|
<title>Retrieve data in singleplayer or on the server:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "dragonfly_db_fnc_test"] call dragonfly_db_fnc_get;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md32">
|
||||||
|
<title>Retrieve data on the server and send to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_get", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md33">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>The function exit with an error if the key or function parameters are empty</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Data is processed through the scheduler system, which manages callback responses</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>For large data that exceeds buffer limits, it will be automatically chunked and reassembled</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The callback function must be defined to accept the retrieved data</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the callback is executed directly or spawned in a separate thread</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md34">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_set</computeroutput>: Stores a value by key</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_delete</computeroutput>: Removes a value by key</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback response</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2get_1autotoc_md35">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete">Delete Key</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2get">Get Key</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2set">Set Key</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,162 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get" xml:lang="en-US">
|
||||||
|
<title>listGet</title>
|
||||||
|
<indexterm><primary>listGet</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md293">
|
||||||
|
<title>autotoc_md293</title>
|
||||||
|
<para>title: ArmaDragonflyClient - List Get icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md294">
|
||||||
|
<title>excerpt: Get element of list stored at key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md295">
|
||||||
|
<title>dragonfly_db_fnc_listGet</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md296">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Retrieves a specific element from a list stored in the database by its index. This function accesses a single item from a list using its position number and returns the data through a callback function. It's useful for accessing individual pieces of data from a sequence without retrieving the entire list.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md297">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _index, _function, _call, _netId] call dragonfly_db_fnc_listGet
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md298">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the list </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_index</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Number </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Index position of the element to retrieve (0-based) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>-1 </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the function to receive the retrieved data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to receive the data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md299">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The retrieved data is passed to the specified callback function asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md300">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md301">
|
||||||
|
<title>Retrieve a specific event log entry:</title>
|
||||||
|
<para><literallayout><computeroutput>["events", 0, "dragonfly_db_fnc_test"] call dragonfly_db_fnc_listGet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md302">
|
||||||
|
<title>Retrieve data with synchronous callback:</title>
|
||||||
|
<para><literallayout><computeroutput>["messages", 5, "dragonfly_db_fnc_processMessage", true] call dragonfly_db_fnc_listGet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md303">
|
||||||
|
<title>Retrieve data and send it to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>["notifications", 0, "dragonfly_db_fnc_displayNotification", false, netId player] remoteExecCall ["dragonfly_db_fnc_listGet", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md304">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Retrieves a single element from a list by its index position</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The key, index, and function parameters are required and validated</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Index is zero-based (the first element is at index 0)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the index is out of bounds or the list doesn't exist, no data will be returned</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The data is retrieved asynchronously through the extension's callback system</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>When a netId is provided, the data is sent to that specific client</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>For retrieving multiple elements, use <computeroutput>listLoad</computeroutput> instead</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md305">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listAdd</computeroutput>: Adds an element to a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listLoad</computeroutput>: Retrieves a range of elements from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listSet</computeroutput>: Replaces a specific element in a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listRemove</computeroutput>: Removes a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get_1autotoc_md306">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add">List Add</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get">List Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load">List Load</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove">List Remove</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set">List Set</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,150 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler" xml:lang="en-US">
|
||||||
|
<title>handler</title>
|
||||||
|
<indexterm><primary>handler</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md81">
|
||||||
|
<title>autotoc_md81</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Handler icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md82">
|
||||||
|
<title>excerpt: Handle data from DB.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md83">
|
||||||
|
<title>dragonfly_db_fnc_handler</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md84">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Handles data received from the database and routes it to the appropriate function. This function is a critical component of the callback system, receiving data from database operations and directing it to the specified function, either locally or to a remote client.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md85">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_uniqueID, _function, _call, _data, _netId] call dragonfly_db_fnc_handler
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md86">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_uniqueID</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Unique identifier for the data chunk </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of function to receive the data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_data</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array, String, Number, or Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The data retrieved from the database </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to receive the data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>nil </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md87">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The data is passed to the specified function for processing.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md88">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md89">
|
||||||
|
<title>Process data locally:</title>
|
||||||
|
<para><literallayout><computeroutput>["0123456789", "dragonfly_db_fnc_test", false, ["Hello World!"]] call dragonfly_db_fnc_handler;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md90">
|
||||||
|
<title>Send data to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>["0123456789", "dragonfly_db_fnc_test", false, ["Hello World!"], netId player] remoteExecCall ["dragonfly_db_fnc_handler", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md91">
|
||||||
|
<title>Process data with direct call (synchronous):</title>
|
||||||
|
<para><literallayout><computeroutput>["0123456789", "dragonfly_db_fnc_processInventory", true, [["weapon1", 30], ["item2", 5]]] call dragonfly_db_fnc_handler;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md92">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>The function validates that both the function name and data are valid before proceeding</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>When a netId is provided, the data is sent to that specific client using remoteExec</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function is typically called by the scheduler or other core components rather than directly by user code</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Each handler call is logged, which is useful for debugging data flow</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md93">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes callbacks from the database extension</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_fetch</computeroutput>: Assembles data chunks for large datasets</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_addTask</computeroutput>: Adds tasks to the database operation queue</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2handler_1autotoc_md94">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">Add Task</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">Handler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">Init</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">Print Addon Name</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">Process Queue</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">Scheduler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">Test</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,70 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name" xml:lang="en-US">
|
||||||
|
<title>printAddonName</title>
|
||||||
|
<indexterm><primary>printAddonName</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md106">
|
||||||
|
<title>autotoc_md106</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Print Addon Name icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md107">
|
||||||
|
<title>excerpt: Displays the addon name in system chat.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md108">
|
||||||
|
<title>dragonfly_db_fnc_printAddonName</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md109">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Displays a thank you message with the addon name in the system chat. This is a simple utility function that can be used to acknowledge the use of the framework or to verify that the addon is properly loaded.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md110">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[] call dragonfly_db_fnc_printAddonName
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md111">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para>None. This function does not require any parameters.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md112">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The function outputs a message to the system chat.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md113">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md114">
|
||||||
|
<title>Display the addon name message:</title>
|
||||||
|
<para><literallayout><computeroutput>[] call dragonfly_db_fnc_printAddonName;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md115">
|
||||||
|
<title>Use in a welcome script:</title>
|
||||||
|
<para><literallayout><computeroutput>if (isServer) then {
|
||||||
|
    [] remoteExec ["dragonfly_db_fnc_printAddonName", 0, true];
|
||||||
|
};
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md116">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>The function uses the ADDON macro defined in script_component.hpp</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This displays a message directly in the player's system chat</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Can be useful as a quick verification that the addon is loaded correctly</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Often used during development or for first-time users</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md117">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_init</computeroutput>: Initializes the database system</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name_1autotoc_md118">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">Add Task</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">Handler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">Init</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">Print Addon Name</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">Process Queue</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">Scheduler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">Test</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,140 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch" xml:lang="en-US">
|
||||||
|
<title>fetch</title>
|
||||||
|
<indexterm><primary>fetch</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md13">
|
||||||
|
<title>autotoc_md13</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Fetch icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md14">
|
||||||
|
<title>excerpt: Handles data chunks received from the database extension when data is too large to be returned in a single callback.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md15">
|
||||||
|
<title>dragonfly_db_fnc_fetch</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md16">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Handles data chunks received from the database extension when data is too large to be returned in a single callback. This function collects all chunks of data, reassembles them in the correct order, and then passes the complete data to the handler function.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md17">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_uniqueID, _function, _index, _total, _datachunk, _call, _netId] call dragonfly_db_fnc_fetch
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md18">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="3" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_uniqueID</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Unique identifier for this data fetch operation </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the function to call after data is assembled </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_index</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Number </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Current chunk index (0-based) </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_total</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Number </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Total number of chunks expected </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_datachunk</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The chunk of data being received </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to whom the data belongs </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md19">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. When all chunks are received, the function will:<orderedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Assemble the complete data string</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Parse it as a simple array</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Call the specified handler function with the parsed data</para>
|
||||||
|
</listitem></orderedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md20">
|
||||||
|
<title>Examples</title>
|
||||||
|
<para>This function is typically not called directly but is triggered by the extension's callback mechanism when large datasets are retrieved.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md21">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>The function stores received chunks in the global array <computeroutput>dragonfly_db_fetch_array</computeroutput></para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Chunks are sorted by their index to ensure correct assembly regardless of arrival order</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>After successful processing, the chunks for this uniqueID are removed from the array</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function is essential for handling large datasets that exceed the callback buffer limit</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch_1autotoc_md22">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_handler</computeroutput>: Receives the assembled data and routes it to the appropriate function</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Manages the callback queue and triggers data fetching </para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,140 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id" xml:lang="en-US">
|
||||||
|
<title>hashSetId</title>
|
||||||
|
<indexterm><primary>hashSetId</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md247">
|
||||||
|
<title>autotoc_md247</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Set ID icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md248">
|
||||||
|
<title>excerpt: Set the specified field to the respective value in the hash stored at key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md249">
|
||||||
|
<title>dragonfly_db_fnc_hashSetId</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md250">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Sets the value of a specified field in a specific hash table identified by its key. This function allows storing various data types (arrays, strings, numbers, or booleans) in a targeted hash table, making it ideal for player-specific or entity-specific data storage. It provides a way to organize related data under a common identifier.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md251">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _keyField, _data] call dragonfly_db_fnc_hashSetId
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md252">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Identifier of the hash table </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_keyField</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the field in the hash to set </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_data</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array, String, Number, or Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The value to store in the hash field </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md253">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously to store the data.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md254">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md255">
|
||||||
|
<title>Store a player's loadout under their UID:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "loadout", [getUnitLoadout player]] call dragonfly_db_fnc_hashSetId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md256">
|
||||||
|
<title>Store vehicle data:</title>
|
||||||
|
<para><literallayout><computeroutput>["vehicle_123", "status", [true, 100, 75, "active"]] call dragonfly_db_fnc_hashSetId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md257">
|
||||||
|
<title>Store player data from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, "stats", [rank player, score player, name player]] remoteExecCall ["dragonfly_db_fnc_hashSetId", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md258">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Stores a single field-value pair in a specific hash table identified by <computeroutput>_key</computeroutput></para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All three parameters (key, keyField, and data) are required and validated</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the hash table doesn't exist, it will be created automatically</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the field already exists in the hash table, its value will be overwritten</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Supports various data types: arrays, strings, numbers, and booleans</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Player UIDs are commonly used as keys to store player-specific data</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Complex data structures should be serialized into arrays</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The operation is executed immediately and synchronously</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md259">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSet</computeroutput>: Sets a field value in the global hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetId</computeroutput>: Retrieves a field value from a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAllId</computeroutput>: Retrieves all fields from a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetIdBulk</computeroutput>: Sets multiple field-value pairs in multiple hash tables</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_1autotoc_md260">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
112
api/docbook/d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.xml
Normal file
112
api/docbook/d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.xml
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test" xml:lang="en-US">
|
||||||
|
<title>test</title>
|
||||||
|
<indexterm><primary>test</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md149">
|
||||||
|
<title>autotoc_md149</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Test icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md150">
|
||||||
|
<title>excerpt: Test Function.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md151">
|
||||||
|
<title>dragonfly_db_fnc_test</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md152">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>A simple test function for verifying database operations. This function displays the received data in a hint message and logs it to the RPT file. It's primarily used for testing database retrieval operations and callback functionality.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md153">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_value] spawn dragonfly_db_fnc_test
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md154">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_value</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array, String, Number, or Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The value to display and log </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md155">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>The same value that was passed to the function. Also sets the global variable <computeroutput>dragonfly_db_test</computeroutput> to this value.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md156">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md157">
|
||||||
|
<title>Test with a simple string:</title>
|
||||||
|
<para><literallayout><computeroutput>["Hello World!"] spawn dragonfly_db_fnc_test;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md158">
|
||||||
|
<title>Test database retrieval by specifying this as callback function:</title>
|
||||||
|
<para><literallayout><computeroutput>["playerStats", "dragonfly_db_fnc_test"] call dragonfly_db_fnc_get;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md159">
|
||||||
|
<title>Test from client to server:</title>
|
||||||
|
<para><literallayout><computeroutput>["Database is working!"] remoteExec ["dragonfly_db_fnc_test", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md160">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Displays the received value using <computeroutput>hint</computeroutput></para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Logs the same value to the RPT file</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Stores the value in the global variable <computeroutput>dragonfly_db_test</computeroutput> for later inspection</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Commonly used as a callback function for database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Useful for debugging and verifying data flow</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Can be called directly or specified as a callback in other functions</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md161">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_get</computeroutput>: Retrieves values from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_handler</computeroutput>: Routes data to callback functions</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Manages the callback system</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2test_1autotoc_md162">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">Add Task</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">Handler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">Init</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">Print Addon Name</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">Process Queue</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">Scheduler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">Test</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
120
api/docbook/d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.xml
Normal file
120
api/docbook/d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.xml
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set" xml:lang="en-US">
|
||||||
|
<title>set</title>
|
||||||
|
<indexterm><primary>set</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md53">
|
||||||
|
<title>autotoc_md53</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Set Key icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md54">
|
||||||
|
<title>excerpt: Set the value of stored key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md55">
|
||||||
|
<title>dragonfly_db_fnc_set</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md56">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Stores a value in the database with the specified key. This function allows saving various data types (arrays, strings, numbers, or booleans) that can be retrieved later using the key.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md57">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _data] call dragonfly_db_fnc_set
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md58">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the key to store the data under </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_data</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array, String, Number, or Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The value to store in the database </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md59">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md60">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md61">
|
||||||
|
<title>Store a simple array:</title>
|
||||||
|
<para><literallayout><computeroutput>["playerInventory", ["item1", "item2", "item3"]] call dragonfly_db_fnc_set;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md62">
|
||||||
|
<title>Store player data under their UID:</title>
|
||||||
|
<para><literallayout><computeroutput>[getPlayerUID player, [name player, getPos player, getAllGear player]] call dragonfly_db_fnc_set;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md63">
|
||||||
|
<title>Call the set function remotely from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>["serverSetting", [true, 30, "normal"]] remoteExecCall ["dragonfly_db_fnc_set", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md64">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>The function validates both the key and data before attempting to store</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the key already exists, its value will be overwritten</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Complex data structures should be serialized into arrays</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>There are no size limits for data, but extremely large values might impact performance</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>For structured data, consider using hash tables instead of key-value pairs</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md65">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_get</computeroutput>: Retrieves a value by key</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_delete</computeroutput>: Removes a value by key</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback response</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2set_1autotoc_md66">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete">Delete Key</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2get">Get Key</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2set">Set Key</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,142 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load" xml:lang="en-US">
|
||||||
|
<title>listLoad</title>
|
||||||
|
<indexterm><primary>listLoad</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md307">
|
||||||
|
<title>autotoc_md307</title>
|
||||||
|
<para>title: ArmaDragonflyClient - List Load icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md308">
|
||||||
|
<title>excerpt: Get all elements of a list stored at a key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md309">
|
||||||
|
<title>dragonfly_db_fnc_listLoad</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md310">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Retrieves all elements of a list stored at a specified key from the DragonflyClient database. This function is useful when you need to access the complete list data rather than individual elements, allowing operations on the entire dataset. The retrieved data is passed to a callback function for processing.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md311">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _function, _call, _netId] call dragonfly_db_fnc_listLoad
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md312">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para>_key </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The key identifying the list to be retrieved </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para>_function </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The name of the function that will receive the retrieved data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para>_call </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function in an unscheduled environment </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para>_netId </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The NetID of the target to return data from the function (multiplayer only) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md313">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>No value is returned directly. The retrieved list data is passed to the specified callback function asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md314">
|
||||||
|
<title>Examples</title>
|
||||||
|
<para><emphasis role="bold">Retrieve all event logs:</emphasis> <literallayout><computeroutput>["events", "myProject_fnc_processEventLogs"] call dragonfly_db_fnc_listLoad;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
|
||||||
|
<para><emphasis role="bold">Retrieve a player list with synchronous callback:</emphasis> <literallayout><computeroutput>["playerList", "myProject_fnc_processPlayerList", true] call dragonfly_db_fnc_listLoad;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
|
||||||
|
<para><emphasis role="bold">Send mission data to a specific client:</emphasis> <literallayout><computeroutput>["missionData", "myProject_fnc_processMissionData", false, netId player] remoteExecCall ["dragonfly_db_fnc_listLoad", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md315">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>This function retrieves the entire list stored at the specified key, making it useful when you need to process multiple elements together.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Both the <computeroutput>_key</computeroutput> and <computeroutput>_function</computeroutput> parameters are required. The function will exit without action if either is empty.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The retrieved data is processed asynchronously through the scheduler system and passed to the specified callback function.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>For multiplayer scenarios, you can specify a target client using the <computeroutput>_netId</computeroutput> parameter to send the retrieved data to that specific client.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the callback function is executed in an unscheduled environment (true) or scheduled environment (false).</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function uses the underlying "listrng" extension with a range from 0 to -1, which retrieves all elements in the list.</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All list operations are logged for debugging purposes.</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md316">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listAdd</computeroutput>: Adds an element to a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listGet</computeroutput>: Retrieves a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listSet</computeroutput>: Replaces a specific element in a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listRemove</computeroutput>: Removes a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load_1autotoc_md317">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add">List Add</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get">List Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load">List Load</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove">List Remove</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set">List Set</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,152 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get" xml:lang="en-US">
|
||||||
|
<title>hashGet</title>
|
||||||
|
<indexterm><primary>hashGet</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md163">
|
||||||
|
<title>autotoc_md163</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Get icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md164">
|
||||||
|
<title>excerpt: Get a field value from the current client's hash table in DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md165">
|
||||||
|
<title>dragonfly_db_fnc_hashGet</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md166">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Retrieves the value associated with a specific field in the hash table of the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <computeroutput>hashGetId</computeroutput> which requires manually specifying an ID. It accesses hash data asynchronously and returns the result through a callback function.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md167">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_keyField, _function, _call, _netId] call dragonfly_db_fnc_hashGet
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md168">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_keyField</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the field in the hash to retrieve </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the function to receive the retrieved data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to receive the data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md169">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The retrieved data is passed to the specified callback function asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md170">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md171">
|
||||||
|
<title>Retrieve a player's loadout:</title>
|
||||||
|
<para><literallayout><computeroutput>["loadout", "dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md172">
|
||||||
|
<title>Retrieve data with synchronous callback:</title>
|
||||||
|
<para><literallayout><computeroutput>["playerScore", "dragonfly_db_fnc_processScore", true] call dragonfly_db_fnc_hashGet;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md173">
|
||||||
|
<title>Retrieve data and send it to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>["loadout", "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGet", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md174">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Retrieves a value from the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The data is retrieved asynchronously through the extension's callback system</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Both the field name and callback function name must be provided</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Input validation ensures both required parameters are non-empty</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>When a netId is provided, the data is sent to that specific client</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function automatically determines which hash table to use based on the caller's identity</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Use <computeroutput>hashGetId</computeroutput> when you need to specify a particular hash table by ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md175">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetId</computeroutput>: Retrieves a field value from a specific hash table (when you need to specify the ID)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAll</computeroutput>: Retrieves all fields from the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAllId</computeroutput>: Retrieves all fields from a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSet</computeroutput>: Sets a field value in the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_1autotoc_md176">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,142 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all" xml:lang="en-US">
|
||||||
|
<title>hashGetAll</title>
|
||||||
|
<indexterm><primary>hashGetAll</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md177">
|
||||||
|
<title>autotoc_md177</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Get All icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md178">
|
||||||
|
<title>excerpt: Get all fields from the current client's hash table in DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md179">
|
||||||
|
<title>dragonfly_db_fnc_hashGetAll</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md180">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Retrieves all fields and values from the hash table associated with the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <computeroutput>hashGetAllId</computeroutput> which requires manually specifying an ID. It returns the entire hash table data through a callback function, allowing access to all stored key-value pairs at once.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md181">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_function, _call, _netId] call dragonfly_db_fnc_hashGetAll
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md182">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the function to receive the retrieved data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>(Optional) NetID of the player to receive the data </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md183">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The retrieved data is passed to the specified callback function asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md184">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md185">
|
||||||
|
<title>Retrieve all client hash data:</title>
|
||||||
|
<para><literallayout><computeroutput>["dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGetAll;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md186">
|
||||||
|
<title>Retrieve data with synchronous callback:</title>
|
||||||
|
<para><literallayout><computeroutput>["dragonfly_db_fnc_processAllData", true] call dragonfly_db_fnc_hashGetAll;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md187">
|
||||||
|
<title>Retrieve data and send it to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>["dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGetAll", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md188">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Returns the complete hash table for the current client with all fields and values as a nested array</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The data is retrieved asynchronously through the extension's callback system</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The callback function name must be provided and is validated</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>When a netId is provided, the data is sent to that specific client</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The <computeroutput>_call</computeroutput> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function automatically determines which hash table to use based on the caller's identity</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Use <computeroutput>hashGetAllId</computeroutput> when you need to specify a particular hash table by ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>For large hash tables, retrieving all data may impact performance</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md189">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGet</computeroutput>: Retrieves a specific field value from the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetId</computeroutput>: Retrieves a specific field value from a specific hash table (when you need to specify the ID)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAllId</computeroutput>: Retrieves all fields from a specific hash table (when you need to specify the ID)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSet</computeroutput>: Sets a field value in the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_1autotoc_md190">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,130 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add" xml:lang="en-US">
|
||||||
|
<title>listAdd</title>
|
||||||
|
<indexterm><primary>listAdd</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md279">
|
||||||
|
<title>autotoc_md279</title>
|
||||||
|
<para>title: ArmaDragonflyClient - List Add icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md280">
|
||||||
|
<title>excerpt: Add element to list stored at key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md281">
|
||||||
|
<title>dragonfly_db_fnc_listAdd</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md282">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Adds an element to a list stored in the database under the specified key. This function appends values to an existing list or creates a new list if it doesn't exist. It's particularly useful for logging, event tracking, or maintaining collections of data that grow over time.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md283">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key, _data] call dragonfly_db_fnc_listAdd
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md284">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the list to add the element to </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_data</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array, String, Number, or Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>The value to insert into the list </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md285">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously to add the element to the list.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md286">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md287">
|
||||||
|
<title>Add an event log entry:</title>
|
||||||
|
<para><literallayout><computeroutput>["events", ["Server state saved to DB " + systemTimeUTC]] call dragonfly_db_fnc_listAdd;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md288">
|
||||||
|
<title>Add a player message:</title>
|
||||||
|
<para><literallayout><computeroutput>["messages", [name player + ": " + _messageText]] call dragonfly_db_fnc_listAdd;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md289">
|
||||||
|
<title>Add data from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>["playerActions", [getPlayerUID player, name player, "logged in"]] remoteExecCall ["dragonfly_db_fnc_listAdd", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md290">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Elements are added to the end of the list in the order they are inserted</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the list doesn't exist, it will be created automatically</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Both the key and data parameters are required and validated</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Lists can store various data types (arrays, strings, numbers, or booleans)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Useful for maintaining a history of events, logs, or sequential data</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The operation is executed immediately and synchronously</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>New elements are always added to the end of the list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md291">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listGet</computeroutput>: Retrieves a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listLoad</computeroutput>: Retrieves a range of elements from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listSet</computeroutput>: Replaces a specific element in a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_listRemove</computeroutput>: Removes a specific element from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback from the database extension</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add_1autotoc_md292">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add">List Add</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get">List Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load">List Load</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove">List Remove</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set">List Set</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,122 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk" xml:lang="en-US">
|
||||||
|
<title>hashSetBulk</title>
|
||||||
|
<indexterm><primary>hashSetBulk</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md233">
|
||||||
|
<title>autotoc_md233</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Set Bulk icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md234">
|
||||||
|
<title>excerpt: Set multiple fields in the current client's hash table in DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md235">
|
||||||
|
<title>dragonfly_db_fnc_hashSetBulk</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md236">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Sets multiple field-value pairs in the hash table associated with the current client/player in a single operation. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <computeroutput>hashSetIdBulk</computeroutput> which requires manually specifying an ID. It allows efficiently storing multiple related fields at once, reducing the number of separate database calls required.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md237">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_data] call dragonfly_db_fnc_hashSetBulk
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md238">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_data</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array of alternating field names and values to store </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md239">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously to store all the data.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md240">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md241">
|
||||||
|
<title>Store player loadout and position:</title>
|
||||||
|
<para><literallayout><computeroutput>[["loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] call dragonfly_db_fnc_hashSetBulk;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md242">
|
||||||
|
<title>Store multiple player settings:</title>
|
||||||
|
<para><literallayout><computeroutput>[["difficulty", ["regular"], "respawn", [true], "tickets", [500]]] call dragonfly_db_fnc_hashSetBulk;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md243">
|
||||||
|
<title>Store player data from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>[["name", [name player], "uid", [getPlayerUID player], "score", [score player]]] remoteExecCall ["dragonfly_db_fnc_hashSetBulk", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md244">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>The data array must be structured as alternating field names and values: <computeroutput>[field1, value1, field2, value2, ...]</computeroutput></para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Each field name must be a string</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Values can be arrays, strings, numbers, or booleans</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All field-value pairs are stored in a single database operation</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If any of the fields already exist, their values will be overwritten</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function automatically determines which hash table to use based on the caller's identity</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Use <computeroutput>hashSetIdBulk</computeroutput> when you need to specify a particular hash table by ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>More efficient than multiple individual <computeroutput>hashSet</computeroutput> calls when setting several fields</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The operation is executed immediately and synchronously</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md245">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSet</computeroutput>: Sets a single field value in the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetIdBulk</computeroutput>: Sets multiple field-value pairs in a specific hash table (when you need to specify the ID)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAll</computeroutput>: Retrieves all fields from the current client's hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGet</computeroutput>: Retrieves a specific field value from the current client's hash table </para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk_1autotoc_md246">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,62 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init" xml:lang="en-US">
|
||||||
|
<title>init</title>
|
||||||
|
<indexterm><primary>init</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md95">
|
||||||
|
<title>autotoc_md95</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Initialization icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md96">
|
||||||
|
<title>excerpt: Initial Extension settings.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md97">
|
||||||
|
<title>dragonfly_db_fnc_init</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md98">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Initializes the ArmaDragonflyClient extension and sets up the initial settings. This function loads the extension, checks its version, sets the buffer size, and logs the initialization status. It is automatically called during mission startup.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md99">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>// This function is automatically called during initialization and doesn't need to be called directly
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md100">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para>None. This function does not require any parameters.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md101">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The function sets up internal variables and logs initialization information.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md102">
|
||||||
|
<title>Examples</title>
|
||||||
|
<para>This function is automatically executed during framework initialization and doesn't need to be called manually.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md103">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Sets the global buffer size to 10240 bytes (10KB)</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Logs the DLL version number for reference</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Confirms successful loading of all functions</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Outputs initialization status to the RPT logs</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This is one of the first functions called when the framework loads</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md104">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_save</computeroutput>: Saves database data to disk</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2init_1autotoc_md105">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">Add Task</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">Handler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">Init</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">Print Addon Name</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">Process Queue</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">Scheduler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">Test</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,180 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task" xml:lang="en-US">
|
||||||
|
<title>addTask</title>
|
||||||
|
<indexterm><primary>addTask</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md67">
|
||||||
|
<title>autotoc_md67</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Add Task icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md68">
|
||||||
|
<title>excerpt: Add task to queue.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md69">
|
||||||
|
<title>dragonfly_db_fnc_addTask</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md70">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Adds a task to the database operation queue. This function is used to schedule database operations that can be processed sequentially, providing a way to manage multiple database requests in an organized manner.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md71">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_taskType, _key, _keyField, _index, _value, _function, _call, _netId] call dragonfly_db_fnc_addTask
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md72">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_taskType</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type of operation to perform (e.g., "hgetall") </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the stored key </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_keyField</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Field name for hash operations </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_index</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Number </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Index for list operations </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>-1 </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_value</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array, String, Number, or Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Value to store (for set operations) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_function</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of function to call with the result </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_call</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Boolean </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Whether to call the function directly (true) or spawn (false) </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>false </para>
|
||||||
|
</entry></row>
|
||||||
|
<row class='markdownTableRowEven'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_netId</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>NetID of the target to receive the result </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>"" </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md73">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The task is added to the queue and processed asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md74">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md75">
|
||||||
|
<title>Add a hash table retrieval task:</title>
|
||||||
|
<para><literallayout><computeroutput>["hgetall", "", "", -1, [], "dragonfly_db_fnc_test"] call dragonfly_db_fnc_addTask;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md76">
|
||||||
|
<title>Add a player-specific task that returns data to a specific client:</title>
|
||||||
|
<para><literallayout><computeroutput>["hgetallid", getPlayerUID player, "", -1, [], "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_addTask", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md77">
|
||||||
|
<title>Add a list operation task:</title>
|
||||||
|
<para><literallayout><computeroutput>["listadd", "playerMessages", "", -1, ["New message content"], ""] call dragonfly_db_fnc_addTask;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md78">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Tasks are processed in the order they are added to the queue</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the queue is not currently being processed, this function will start the processing</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The task type determines which database operation will be performed</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function is particularly useful for scheduling multiple related operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations performed through the task queue are logged for debugging</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md79">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_processQueue</computeroutput>: Processes the pending tasks in the queue</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_handler</computeroutput>: Handles the results of completed database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Manages callback responses from the database</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task_1autotoc_md80">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">Add Task</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">Handler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">Init</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">Print Addon Name</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">Process Queue</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">Scheduler</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">Test</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,124 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk" xml:lang="en-US">
|
||||||
|
<title>hashSetIdBulk</title>
|
||||||
|
<indexterm><primary>hashSetIdBulk</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md261">
|
||||||
|
<title>autotoc_md261</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Hash Set ID Bulk icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md262">
|
||||||
|
<title>excerpt: Set the specified fields to their respective values in the hash stored at key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md263">
|
||||||
|
<title>dragonfly_db_fnc_hashSetIdBulk</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md264">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Sets multiple field-value pairs in a specific hash table identified by its key in a single operation. This function allows efficiently storing multiple related fields at once for a specific identifier, reducing the number of separate database calls required. It's ideal for saving a collection of player-specific or entity-specific data.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md265">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_data] call dragonfly_db_fnc_hashSetIdBulk
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md266">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<colspec colname='c4'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Default </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_data</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Array with key followed by alternating field names and values </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>[] </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md267">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs synchronously to store all the data.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md268">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md269">
|
||||||
|
<title>Store player loadout and position:</title>
|
||||||
|
<para><literallayout><computeroutput>[[getPlayerUID player, "loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] call dragonfly_db_fnc_hashSetIdBulk;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md270">
|
||||||
|
<title>Store multiple vehicle properties:</title>
|
||||||
|
<para><literallayout><computeroutput>[["vehicle_123", "fuel", [0.75], "damage", [0.2], "crew", [["player1", "player2"]]]] call dragonfly_db_fnc_hashSetIdBulk;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md271">
|
||||||
|
<title>Store player data from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>[[getPlayerUID player, "stats", [score player], "inventory", [getAllGear player]]] remoteExecCall ["dragonfly_db_fnc_hashSetIdBulk", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md272">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>The data array must be structured with the key first, followed by alternating field names and values: <computeroutput>[key, field1, value1, field2, value2, ...]</computeroutput></para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The key must be a string that identifies the specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Each field name must be a string</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Values can be arrays, strings, numbers, or booleans</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All field-value pairs are stored in a single database operation</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the hash table doesn't exist, it will be created automatically</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If any of the fields already exist in the hash table, their values will be overwritten</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>More efficient than multiple individual <computeroutput>hashSetId</computeroutput> calls when setting several fields</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Player UIDs are commonly used as keys to store player-specific data</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>The operation is executed immediately and synchronously</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>All operations are logged for debugging purposes</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md273">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetId</computeroutput>: Sets a single field value in a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashSetBulk</computeroutput>: Sets multiple field-value pairs in the global hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetAllId</computeroutput>: Retrieves all fields from a specific hash table</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_hashGetId</computeroutput>: Retrieves a specific field value from a specific hash table</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk_1autotoc_md274">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
@ -0,0 +1,96 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete" xml:lang="en-US">
|
||||||
|
<title>delete</title>
|
||||||
|
<indexterm><primary>delete</primary></indexterm>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md0">
|
||||||
|
<title>autotoc_md0</title>
|
||||||
|
<para>title: ArmaDragonflyClient - Delete Key icon: mdi:file-text-outline </para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md1">
|
||||||
|
<title>excerpt: Remove the specified key from DragonflyClient.</title></section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md2">
|
||||||
|
<title>dragonfly_db_fnc_delete</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md3">
|
||||||
|
<title>Description</title>
|
||||||
|
<para>Removes the specified key from the database. This function deletes the key-value pair completely from storage.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md4">
|
||||||
|
<title>Syntax</title>
|
||||||
|
<para><literallayout><computeroutput>[_key] call dragonfly_db_fnc_delete
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md5">
|
||||||
|
<title>Parameters</title>
|
||||||
|
<para><informaltable frame="all">
|
||||||
|
<tgroup cols="3" align="left" colsep="1" rowsep="1">
|
||||||
|
<colspec colname='c1'/>
|
||||||
|
<colspec colname='c2'/>
|
||||||
|
<colspec colname='c3'/>
|
||||||
|
<thead>
|
||||||
|
<row class='markdownTableHead'>
|
||||||
|
<entry>
|
||||||
|
<para>Parameter </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Type </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Description </para>
|
||||||
|
</entry></row>
|
||||||
|
</thead><tbody>
|
||||||
|
<row class='markdownTableRowOdd'>
|
||||||
|
<entry>
|
||||||
|
<para><computeroutput>_key</computeroutput> </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>String </para>
|
||||||
|
</entry><entry>
|
||||||
|
<para>Name of the key to delete from the database </para>
|
||||||
|
</entry></row>
|
||||||
|
</tbody>
|
||||||
|
</tgroup>
|
||||||
|
</informaltable>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md6">
|
||||||
|
<title>Return Value</title>
|
||||||
|
<para>None. The operation runs asynchronously.</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md7">
|
||||||
|
<title>Examples</title><section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md8">
|
||||||
|
<title>Delete a key in singleplayer or on the server:</title>
|
||||||
|
<para><literallayout><computeroutput>["playerData"] call dragonfly_db_fnc_delete;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md9">
|
||||||
|
<title>Delete a key on the server from a client:</title>
|
||||||
|
<para><literallayout><computeroutput>["playerData"] remoteExecCall ["dragonfly_db_fnc_delete", 2, false];
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md10">
|
||||||
|
<title>Notes</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>This operation is permanent and cannot be undone</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>If the key doesn't exist, the operation will have no effect</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>This function only affects specific keys, not hash tables or lists</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md11">
|
||||||
|
<title>Related Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_get</computeroutput>: Retrieves a value by key</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_set</computeroutput>: Stores a value by key</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><computeroutput>dragonfly_db_fnc_scheduler</computeroutput>: Processes the callback response</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete_1autotoc_md12">
|
||||||
|
<title>Links</title>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete">Delete Key</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2get">Get Key</link> | <link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2set">Set Key</link> </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
51
api/docbook/dir_10eb6422e80bd721a9a7af022f58c68b.xml
Normal file
51
api/docbook/dir_10eb6422e80bd721a9a7af022f58c68b.xml
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_dir_10eb6422e80bd721a9a7af022f58c68b" xml:lang="en-US">
|
||||||
|
<title>G:/ids/dragonfly/docs/core Directory Reference</title>
|
||||||
|
<indexterm><primary>G:/ids/dragonfly/docs/core Directory Reference</primary></indexterm>
|
||||||
|
<section>
|
||||||
|
<title>Detailed Description</title>
|
||||||
|
|
||||||
|
<para>This section contains documentation for the core functions of ArmaDragonflyClient that handle initialization, process management, and scheduling.</para>
|
||||||
|
<section xml:id="_README.md_1autotoc_md133">
|
||||||
|
<title>Available Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">addTask</link> - Add a task to the scheduler</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">handler</link> - Handle callbacks from the extension</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">init</link> - Initialize the database system</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">printAddonName</link> - Print the addon name</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">processQueue</link> - Process queued database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">scheduler</link> - Schedule database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">test</link> - Test the database connection</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md134">
|
||||||
|
<title>Example Usage</title>
|
||||||
|
<para><literallayout><computeroutput>// Initialize the database
|
||||||
|
[] call dragonfly_db_fnc_init;
|
||||||
|
|
||||||
|
// Test the database connection
|
||||||
|
[] call dragonfly_db_fnc_test;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md135">
|
||||||
|
<title>Related Categories</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Basic Data Operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Hash Operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>List Operations </para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
64
api/docbook/dir_1d1eabba2c636e67297dc8cee9bc9944.xml
Normal file
64
api/docbook/dir_1d1eabba2c636e67297dc8cee9bc9944.xml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_dir_1d1eabba2c636e67297dc8cee9bc9944" xml:lang="en-US">
|
||||||
|
<title>G:/ids/dragonfly/docs/hash Directory Reference</title>
|
||||||
|
<indexterm><primary>G:/ids/dragonfly/docs/hash Directory Reference</primary></indexterm>
|
||||||
|
<section>
|
||||||
|
<title>Detailed Description</title>
|
||||||
|
|
||||||
|
<para>This section contains documentation for the hash operations of ArmaDragonflyClient that allow for working with hash tables (key-value pairs within a namespace).</para>
|
||||||
|
<section xml:id="_README.md_1autotoc_md276">
|
||||||
|
<title>Available Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">hashGet</link> - Get a field from a hash</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">hashGetAll</link> - Get all fields from a hash</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">hashGetAllId</link> - Get all fields from a hash for a specific ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">hashGetId</link> - Get a field from a hash for a specific ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">hashSet</link> - Set a field in a hash</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">hashSetBulk</link> - Set multiple fields in a hash in one operation</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">hashSetId</link> - Set a field in a hash for a specific ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">hashSetIdBulk</link> - Set multiple fields in a hash for a specific ID in one operation</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md277">
|
||||||
|
<title>Example Usage</title>
|
||||||
|
<para><literallayout><computeroutput>// Context mode examples
|
||||||
|
["myField", [myValue]] call dragonfly_db_fnc_hashSet;
|
||||||
|
["myField", "myFunction"] call dragonfly_db_fnc_hashGet;
|
||||||
|
["myFunction"] call dragonfly_db_fnc_hashGetAll;
|
||||||
|
|
||||||
|
// Set multiple hash fields in one operation
|
||||||
|
[[
|
||||||
|
    "loadout", [getUnitLoadout player],
|
||||||
|
    "position", [getPosASL player],
|
||||||
|
    "direction", [getDir player]
|
||||||
|
]] call dragonfly_db_fnc_hashSetBulk;
|
||||||
|
|
||||||
|
// ID-specific examples
|
||||||
|
["myHash", "myField", [myValue]] call dragonfly_db_fnc_hashSetId;
|
||||||
|
["myHash", "myField", "myFunction"] call dragonfly_db_fnc_hashGetId;
|
||||||
|
["myHash"] call dragonfly_db_fnc_hashGetAllId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md278">
|
||||||
|
<title>Related Categories</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Core Functions</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Basic Data Operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>List Operations </para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
208
api/docbook/dir_6b1f4820e2481aa5a1ea9b2275f196d9.xml
Normal file
208
api/docbook/dir_6b1f4820e2481aa5a1ea9b2275f196d9.xml
Normal file
@ -0,0 +1,208 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_dir_6b1f4820e2481aa5a1ea9b2275f196d9" xml:lang="en-US">
|
||||||
|
<title>G:/ids/dragonfly/docs Directory Reference</title>
|
||||||
|
<indexterm><primary>G:/ids/dragonfly/docs Directory Reference</primary></indexterm>
|
||||||
|
<simplesect>
|
||||||
|
<title>Directories </title>
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem><para>directory <link linkend="_dir_71f12be5768ca2af9c9f300d019944af">basic</link></para>
|
||||||
|
</listitem>
|
||||||
|
<listitem><para>directory <link linkend="_dir_10eb6422e80bd721a9a7af022f58c68b">core</link></para>
|
||||||
|
</listitem>
|
||||||
|
<listitem><para>directory <link linkend="_dir_1d1eabba2c636e67297dc8cee9bc9944">hash</link></para>
|
||||||
|
</listitem>
|
||||||
|
<listitem><para>directory <link linkend="_dir_72c6efb7383bf0530aa073c1e7428252">list</link></para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
</simplesect>
|
||||||
|
<section>
|
||||||
|
<title>Detailed Description</title>
|
||||||
|
|
||||||
|
<para>This documentation provides details on all functions available in <computeroutput>ArmaDragonflyClient</computeroutput>. These functions allow you to interact with the in-memory database system for Arma 3.</para>
|
||||||
|
<section xml:id="_README.md_1autotoc_md345">
|
||||||
|
<title>Function Categories</title>
|
||||||
|
<para>The functions are categorized by their purpose:</para>
|
||||||
|
<section xml:id="_README.md_1autotoc_md346">
|
||||||
|
<title>Core Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2init">init</link> - Initialize the database system</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2handler">handler</link> - Handle callbacks from the extension</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2process_queue">processQueue</link> - Process queued database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2scheduler">scheduler</link> - Schedule database operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2add_task">addTask</link> - Add a task to the scheduler</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name">printAddonName</link> - Print the addon name</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2core_2test">test</link> - Test the database connection</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md347">
|
||||||
|
<title>Basic Data Operations</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2get">get</link> - Get a value from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2set">set</link> - Set a value in the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete">delete</link> - Delete a value from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2save">save</link> - Save the database to disk</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch">fetch</link> - Fetch a value from the database</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md348">
|
||||||
|
<title>Hash Operations</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get">hashGet</link> - Get a field from a hash</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all">hashGetAll</link> - Get all fields from a hash</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id">hashGetAllId</link> - Get all fields from a hash for a specific ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id">hashGetId</link> - Get a field from a hash for a specific ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set">hashSet</link> - Set a field in a hash</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk">hashSetBulk</link> - Set multiple fields in a hash in one operation</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id">hashSetId</link> - Set a field in a hash for a specific ID</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk">hashSetIdBulk</link> - Set multiple fields in a hash for a specific ID in one operation</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md349">
|
||||||
|
<title>List Operations</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add">listAdd</link> - Add an item to a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get">listGet</link> - Get items from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load">listLoad</link> - Load a list from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove">listRemove</link> - Remove an item from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set">listSet</link> - Set an item in a list</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md350">
|
||||||
|
<title>Usage Examples</title><section xml:id="_README.md_1autotoc_md351">
|
||||||
|
<title>Basic Usage</title>
|
||||||
|
<para><literallayout><computeroutput>// Initialize the database
|
||||||
|
[] call dragonfly_db_fnc_init;
|
||||||
|
|
||||||
|
// Set a value
|
||||||
|
["myKey", [myValue]] call dragonfly_db_fnc_set;
|
||||||
|
|
||||||
|
// Get a value
|
||||||
|
["myKey", "myFunction"] call dragonfly_db_fnc_get;
|
||||||
|
|
||||||
|
// Delete a key
|
||||||
|
["myKey"] call dragonfly_db_fnc_delete;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md352">
|
||||||
|
<title>Hash Operations</title>
|
||||||
|
<para><literallayout><computeroutput>// Set a hash field (context mode)
|
||||||
|
["myField", [myValue]] call dragonfly_db_fnc_hashSet;
|
||||||
|
|
||||||
|
// Get a hash field (context mode)
|
||||||
|
["myField", "myFunction"] call dragonfly_db_fnc_hashGet;
|
||||||
|
|
||||||
|
// Get all hash fields (context mode)
|
||||||
|
["myFunction"] call dragonfly_db_fnc_hashGetAll;
|
||||||
|
|
||||||
|
// Set multiple hash fields (context mode)
|
||||||
|
[[
|
||||||
|
    "loadout", [getUnitLoadout player],
|
||||||
|
    "position", [getPosASL player],
|
||||||
|
    "direction", [getDir player],
|
||||||
|
    "stance", [stance player]
|
||||||
|
]] call dragonfly_db_fnc_hashSetBulk;
|
||||||
|
|
||||||
|
// Remove a hash field (context mode)
|
||||||
|
["myField"] call dragonfly_db_fnc_hashRemove;
|
||||||
|
|
||||||
|
// Delete a hash table (context mode)
|
||||||
|
[] call dragonfly_db_fnc_hashDelete;
|
||||||
|
</computeroutput></literallayout> <literallayout><computeroutput>// Set a hash field for specific ID
|
||||||
|
["myHash", "myField", [myValue]] call dragonfly_db_fnc_hashSetId;
|
||||||
|
|
||||||
|
// Get a hash field for specific ID
|
||||||
|
["myHash", "myField", "myFunction"] call dragonfly_db_fnc_hashGetId;
|
||||||
|
|
||||||
|
// Get all hash fields for specific ID
|
||||||
|
["myHash"] call dragonfly_db_fnc_hashGetAllId;
|
||||||
|
|
||||||
|
// Set multiple hash fields for specific ID
|
||||||
|
[[
|
||||||
|
    getPlayerUID player,
|
||||||
|
    "loadout", [getUnitLoadout player],
|
||||||
|
    "position", [getPosASL player],
|
||||||
|
    "direction", [getDir player],
|
||||||
|
    "stance", [stance player]
|
||||||
|
]] call dragonfly_db_fnc_hashSetIdBulk;
|
||||||
|
|
||||||
|
// Remove a hash field for specific ID
|
||||||
|
["myHash", "myField"] call dragonfly_db_fnc_hashRemoveId;
|
||||||
|
|
||||||
|
// Delete a hash table for specific ID
|
||||||
|
["myHash"] call dragonfly_db_fnc_hashDeleteId;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md353">
|
||||||
|
<title>List Operations</title>
|
||||||
|
<para><literallayout><computeroutput>// Add an item to a list
|
||||||
|
["myList", ["myItem"]] call dragonfly_db_fnc_listAdd;
|
||||||
|
|
||||||
|
// Set an item from a list
|
||||||
|
["myList", 0, [myNewValue]] call dragonfly_db_fnc_listSet;
|
||||||
|
|
||||||
|
// Get an item from a list
|
||||||
|
["myList", 0, "myFunction"] call dragonfly_db_fnc_listGet;
|
||||||
|
|
||||||
|
// Get items from a list
|
||||||
|
["myList", "myFunction"] call dragonfly_db_fnc_listLoad;
|
||||||
|
|
||||||
|
// Remove an item from a list
|
||||||
|
["myList", 0] call dragonfly_db_fnc_listRemove;
|
||||||
|
|
||||||
|
// Delete a list
|
||||||
|
["myList"] call dragonfly_db_fnc_listDelete;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md354">
|
||||||
|
<title>Function Documentation Structure</title>
|
||||||
|
<para>Each function documentation includes:<itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Function name and purpose</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Parameters</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Return value</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Examples</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Notes and warnings</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md355">
|
||||||
|
<title>License</title>
|
||||||
|
<para>This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. To view a copy of this license, visit <link xlink:href="https://creativecommons.org/licenses/by-nc-sa/4.0/">https://creativecommons.org/licenses/by-nc-sa/4.0/</link> or send a letter to Creative Commons, <?linebreak?>PO Box 1866, Mountain View, CA 94042 </para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
53
api/docbook/dir_71f12be5768ca2af9c9f300d019944af.xml
Normal file
53
api/docbook/dir_71f12be5768ca2af9c9f300d019944af.xml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_dir_71f12be5768ca2af9c9f300d019944af" xml:lang="en-US">
|
||||||
|
<title>G:/ids/dragonfly/docs/basic Directory Reference</title>
|
||||||
|
<indexterm><primary>G:/ids/dragonfly/docs/basic Directory Reference</primary></indexterm>
|
||||||
|
<section>
|
||||||
|
<title>Detailed Description</title>
|
||||||
|
|
||||||
|
<para>This section contains documentation for the basic data operations of ArmaDragonflyClient that allow for simple key-value storage and retrieval.</para>
|
||||||
|
<section xml:id="_README.md_1autotoc_md37">
|
||||||
|
<title>Available Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2delete">delete</link> - Delete a value from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2fetch">fetch</link> - Fetch a value from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2get">get</link> - Get a value from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2save">save</link> - Save the database to disk</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2basic_2set">set</link> - Set a value in the database</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md38">
|
||||||
|
<title>Example Usage</title>
|
||||||
|
<para><literallayout><computeroutput>// Set a value
|
||||||
|
["myKey", [myValue]] call dragonfly_db_fnc_set;
|
||||||
|
|
||||||
|
// Get a value
|
||||||
|
["myKey", "myFunction"] call dragonfly_db_fnc_get;
|
||||||
|
|
||||||
|
// Delete a key
|
||||||
|
["myKey"] call dragonfly_db_fnc_delete;
|
||||||
|
|
||||||
|
// Save database to disk
|
||||||
|
[] call dragonfly_db_fnc_save;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md39">
|
||||||
|
<title>Related Categories</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Core Functions</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Hash Operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>List Operations </para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
56
api/docbook/dir_72c6efb7383bf0530aa073c1e7428252.xml
Normal file
56
api/docbook/dir_72c6efb7383bf0530aa073c1e7428252.xml
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_dir_72c6efb7383bf0530aa073c1e7428252" xml:lang="en-US">
|
||||||
|
<title>G:/ids/dragonfly/docs/list Directory Reference</title>
|
||||||
|
<indexterm><primary>G:/ids/dragonfly/docs/list Directory Reference</primary></indexterm>
|
||||||
|
<section>
|
||||||
|
<title>Detailed Description</title>
|
||||||
|
|
||||||
|
<para>This section contains documentation for the list operations of ArmaDragonflyClient that allow for working with ordered collections of items.</para>
|
||||||
|
<section xml:id="_README.md_1autotoc_md341">
|
||||||
|
<title>Available Functions</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_add">listAdd</link> - Add an item to a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_get">listGet</link> - Get items from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_load">listLoad</link> - Load a list from the database</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_remove">listRemove</link> - Remove an item from a list</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para><link linkend="_md__g_1_2ids_2dragonfly_2docs_2list_2list_set">listSet</link> - Set an item in a list</para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md342">
|
||||||
|
<title>Example Usage</title>
|
||||||
|
<para><literallayout><computeroutput>// Add an item to a list
|
||||||
|
["myList", ["myItem"]] call dragonfly_db_fnc_listAdd;
|
||||||
|
|
||||||
|
// Set an item at a specific index
|
||||||
|
["myList", 0, [myNewValue]] call dragonfly_db_fnc_listSet;
|
||||||
|
|
||||||
|
// Get an item at a specific index
|
||||||
|
["myList", 0, "myFunction"] call dragonfly_db_fnc_listGet;
|
||||||
|
|
||||||
|
// Load all items from a list
|
||||||
|
["myList", "myFunction"] call dragonfly_db_fnc_listLoad;
|
||||||
|
|
||||||
|
// Remove an item at a specific index
|
||||||
|
["myList", 0] call dragonfly_db_fnc_listRemove;
|
||||||
|
</computeroutput></literallayout></para>
|
||||||
|
</section>
|
||||||
|
<section xml:id="_README.md_1autotoc_md343">
|
||||||
|
<title>Related Categories</title>
|
||||||
|
<para><itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para>Core Functions</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Basic Data Operations</para>
|
||||||
|
</listitem><listitem>
|
||||||
|
<para>Hash Operations </para>
|
||||||
|
</listitem></itemizedlist>
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</section>
|
32
api/docbook/index.xml
Normal file
32
api/docbook/index.xml
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
||||||
|
<book xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_index" xml:lang="en-US">
|
||||||
|
<info>
|
||||||
|
<title>ArmaDragonflyClient</title>
|
||||||
|
</info>
|
||||||
|
<xi:include href="df/d12/md__g_1_2ids_2dragonfly_2docs_2basic_2delete.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d4/d99/md__g_1_2ids_2dragonfly_2docs_2basic_2fetch.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d2/dce/md__g_1_2ids_2dragonfly_2docs_2basic_2save.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="da/d2c/md__g_1_2ids_2dragonfly_2docs_2list_2list_add.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d3/ddf/md__g_1_2ids_2dragonfly_2docs_2list_2list_get.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d9/db3/md__g_1_2ids_2dragonfly_2docs_2list_2list_load.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d1/d22/md__g_1_2ids_2dragonfly_2docs_2list_2list_remove.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<xi:include href="d2/dc5/md__g_1_2ids_2dragonfly_2docs_2list_2list_set.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||||
|
<index/>
|
||||||
|
</book>
|
BIN
api/html/bc_s.png
Normal file
BIN
api/html/bc_s.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 676 B |
BIN
api/html/bc_sd.png
Normal file
BIN
api/html/bc_sd.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 635 B |
61
api/html/clipboard.js
Normal file
61
api/html/clipboard.js
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
/**
|
||||||
|
|
||||||
|
The code below is based on the Doxygen Awesome project, see
|
||||||
|
https://github.com/jothepro/doxygen-awesome-css
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2021 - 2022 jothepro
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
let clipboard_title = "Copy to clipboard"
|
||||||
|
let clipboard_icon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path fill="#888" d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg>`
|
||||||
|
let clipboard_successIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"/></svg>`
|
||||||
|
let clipboard_successDuration = 1000
|
||||||
|
|
||||||
|
$(function() {
|
||||||
|
if(navigator.clipboard) {
|
||||||
|
const fragments = document.getElementsByClassName("fragment")
|
||||||
|
for(const fragment of fragments) {
|
||||||
|
const clipboard_div = document.createElement("div")
|
||||||
|
clipboard_div.classList.add("clipboard")
|
||||||
|
clipboard_div.innerHTML = clipboard_icon
|
||||||
|
clipboard_div.title = clipboard_title
|
||||||
|
$(clipboard_div).click(function() {
|
||||||
|
const content = this.parentNode.cloneNode(true)
|
||||||
|
// filter out line number and folded fragments from file listings
|
||||||
|
content.querySelectorAll(".lineno, .ttc, .foldclosed").forEach((node) => { node.remove() })
|
||||||
|
let text = content.textContent
|
||||||
|
// remove trailing newlines and trailing spaces from empty lines
|
||||||
|
text = text.replace(/^\s*\n/gm,'\n').replace(/\n*$/,'')
|
||||||
|
navigator.clipboard.writeText(text);
|
||||||
|
this.classList.add("success")
|
||||||
|
this.innerHTML = clipboard_successIcon
|
||||||
|
window.setTimeout(() => { // switch back to normal icon after timeout
|
||||||
|
this.classList.remove("success")
|
||||||
|
this.innerHTML = clipboard_icon
|
||||||
|
}, clipboard_successDuration);
|
||||||
|
})
|
||||||
|
fragment.insertBefore(clipboard_div, fragment.firstChild)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
BIN
api/html/closed.png
Normal file
BIN
api/html/closed.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 132 B |
58
api/html/cookie.js
Normal file
58
api/html/cookie.js
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
/*!
|
||||||
|
Cookie helper functions
|
||||||
|
Copyright (c) 2023 Dimitri van Heesch
|
||||||
|
Released under MIT license.
|
||||||
|
*/
|
||||||
|
let Cookie = {
|
||||||
|
cookie_namespace: 'doxygen_',
|
||||||
|
|
||||||
|
readSetting(cookie,defVal) {
|
||||||
|
if (window.chrome) {
|
||||||
|
const val = localStorage.getItem(this.cookie_namespace+cookie) ||
|
||||||
|
sessionStorage.getItem(this.cookie_namespace+cookie);
|
||||||
|
if (val) return val;
|
||||||
|
} else {
|
||||||
|
let myCookie = this.cookie_namespace+cookie+"=";
|
||||||
|
if (document.cookie) {
|
||||||
|
const index = document.cookie.indexOf(myCookie);
|
||||||
|
if (index != -1) {
|
||||||
|
const valStart = index + myCookie.length;
|
||||||
|
let valEnd = document.cookie.indexOf(";", valStart);
|
||||||
|
if (valEnd == -1) {
|
||||||
|
valEnd = document.cookie.length;
|
||||||
|
}
|
||||||
|
return document.cookie.substring(valStart, valEnd);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return defVal;
|
||||||
|
},
|
||||||
|
|
||||||
|
writeSetting(cookie,val,days=10*365) { // default days='forever', 0=session cookie, -1=delete
|
||||||
|
if (window.chrome) {
|
||||||
|
if (days==0) {
|
||||||
|
sessionStorage.setItem(this.cookie_namespace+cookie,val);
|
||||||
|
} else {
|
||||||
|
localStorage.setItem(this.cookie_namespace+cookie,val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
let date = new Date();
|
||||||
|
date.setTime(date.getTime()+(days*24*60*60*1000));
|
||||||
|
const expiration = days!=0 ? "expires="+date.toGMTString()+";" : "";
|
||||||
|
document.cookie = this.cookie_namespace + cookie + "=" +
|
||||||
|
val + "; SameSite=Lax;" + expiration + "path=/";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
eraseSetting(cookie) {
|
||||||
|
if (window.chrome) {
|
||||||
|
if (localStorage.getItem(this.cookie_namespace+cookie)) {
|
||||||
|
localStorage.removeItem(this.cookie_namespace+cookie);
|
||||||
|
} else if (sessionStorage.getItem(this.cookie_namespace+cookie)) {
|
||||||
|
sessionStorage.removeItem(this.cookie_namespace+cookie);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.writeSetting(cookie,'',-1);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
@ -0,0 +1,170 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: processQueue</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">processQueue</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md119"></a>
|
||||||
|
autotoc_md119</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Process Queue icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md120"></a>
|
||||||
|
excerpt: Processes a queue of tasks to be executed.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md121"></a>
|
||||||
|
dragonfly_db_fnc_processQueue</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md122"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Processes the queue of pending database tasks sequentially. This function executes each task in the queue one by one, handling various database operations based on the task type. It continues processing until the queue is empty.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md123"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[] spawn dragonfly_db_fnc_processQueue</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md124"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<p>None. This function does not require any parameters.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md125"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The function processes tasks in the queue and updates the processing state.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md126"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md127"></a>
|
||||||
|
Start processing the queue manually:</h3>
|
||||||
|
<div class="fragment"><div class="line">[] spawn dragonfly_db_fnc_processQueue;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md128"></a>
|
||||||
|
Trigger queue processing from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[] remoteExec ["dragonfly_db_fnc_processQueue", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md129"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Sets <code>GVAR(isProcessing)</code> to true while running and false when complete</li>
|
||||||
|
<li>Processes one task per second to prevent overloading</li>
|
||||||
|
<li>Handles a wide range of database operations including:<ul>
|
||||||
|
<li>Key-value operations (get, set, delete)</li>
|
||||||
|
<li>Hash table operations (hget, hset, hgetall, etc.)</li>
|
||||||
|
<li>List operations (listadd, listrng, listset, etc.)</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>Automatically started by <code>dragonfly_db_fnc_addTask</code> when new tasks are added</li>
|
||||||
|
<li>Each task execution is logged for debugging purposes</li>
|
||||||
|
<li>Should typically be spawned rather than called to avoid blocking</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md130"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_addTask</code>: Adds tasks to the queue for processing</li>
|
||||||
|
<li><code>dragonfly_db_fnc_handler</code>: Handles data returned from database operations</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Manages callback responses from the database</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md131"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">Add Task</a> | <a class="el" href="../../d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">Handler</a> | <a class="el" href="../../dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">Init</a> | <a class="el" href="../../d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">Print Addon Name</a> | <a class="el" href="../../d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">Process Queue</a> | <a class="el" href="../../d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">Scheduler</a> | <a class="el" href="../../d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">Test</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,179 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashSet</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashSet</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md219"></a>
|
||||||
|
autotoc_md219</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Set icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md220"></a>
|
||||||
|
excerpt: Set a field value in the current client's hash table in DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md221"></a>
|
||||||
|
dragonfly_db_fnc_hashSet</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md222"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Sets the value of a specified field in the hash table associated with the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <code>hashSetId</code> which requires manually specifying an ID. It allows storing various data types (arrays, strings, numbers, or booleans) in a field of the client-specific hash structure.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md223"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_keyField, _data] call dragonfly_db_fnc_hashSet</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md224"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_keyField</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the field in the hash to set </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_data</code> </td><td class="markdownTableBodyNone">Array, String, Number, or Boolean </td><td class="markdownTableBodyNone">The value to store in the hash field </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md225"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously to store the data.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md226"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md227"></a>
|
||||||
|
Store a player's loadout:</h3>
|
||||||
|
<div class="fragment"><div class="line">["loadout", [getUnitLoadout player]] call dragonfly_db_fnc_hashSet;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md228"></a>
|
||||||
|
Store player preferences:</h3>
|
||||||
|
<div class="fragment"><div class="line">["settings", [true, 30, "normal"]] call dragonfly_db_fnc_hashSet;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md229"></a>
|
||||||
|
Store data from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["clientInfo", [name player, getPlayerUID player]] remoteExecCall ["dragonfly_db_fnc_hashSet", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md230"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Stores a single field-value pair in the current client's hash table</li>
|
||||||
|
<li>Both the field name and data parameters are required and validated</li>
|
||||||
|
<li>If the field already exists, its value will be overwritten</li>
|
||||||
|
<li>Supports various data types: arrays, strings, numbers, and booleans</li>
|
||||||
|
<li>This function automatically determines which hash table to use based on the caller's identity</li>
|
||||||
|
<li>Use <code>hashSetId</code> when you need to specify a particular hash table by ID</li>
|
||||||
|
<li>Complex data structures should be serialized into arrays</li>
|
||||||
|
<li>The operation is executed immediately and synchronously</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md231"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetId</code>: Sets a field value in a specific hash table (when you need to specify the ID)</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGet</code>: Retrieves a field value from the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAll</code>: Retrieves all fields from the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetBulk</code>: Sets multiple fields in the current client's hash table</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md232"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,171 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: scheduler</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">scheduler</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md136"></a>
|
||||||
|
autotoc_md136</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Scheduler icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md137"></a>
|
||||||
|
excerpt: Scheduled Environment for extension.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md138"></a>
|
||||||
|
dragonfly_db_fnc_scheduler</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md139"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Manages the callback system for the ArmaDragonflyClient extension. This function receives task IDs from the extension's asynchronous callbacks, parses them, and registers them in a hashmap for later processing. It acts as the bridge between the extension's asynchronous operations and the game's execution environment.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md140"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_taskID] call dragonfly_db_fnc_scheduler</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md141"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_taskID</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Task identifier returned from extension callback </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md142"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The function registers the task ID in a hashmap for later processing.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md143"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md144"></a>
|
||||||
|
Process a callback from the extension:</h3>
|
||||||
|
<div class="fragment"><div class="line">["1689524160123_get"] call dragonfly_db_fnc_scheduler;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md145"></a>
|
||||||
|
Forward a callback to the server:</h3>
|
||||||
|
<div class="fragment"><div class="line">["1689524160123_hgetall"] remoteExecCall ["dragonfly_db_fnc_scheduler", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md146"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Parses the task ID to extract the timestamp and operation type</li>
|
||||||
|
<li>Registers the task in a type-specific hashmap using the mission namespace</li>
|
||||||
|
<li>Each operation type (get, hgetall, etc.) has its own hashmap for tracking</li>
|
||||||
|
<li>The format of task IDs is typically: <code>[timestamp]_[operation]</code></li>
|
||||||
|
<li>This function is automatically called by the extension callback mechanism</li>
|
||||||
|
<li>Creates hashmaps on demand if they don't already exist</li>
|
||||||
|
<li>Critical for handling asynchronous database operations</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md147"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_fetch</code>: Assembles data chunks for large datasets</li>
|
||||||
|
<li><code>dragonfly_db_fnc_handler</code>: Processes the data retrieved from database operations</li>
|
||||||
|
<li><code>dragonfly_db_fnc_processQueue</code>: Executes queued database operations</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md148"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">Add Task</a> | <a class="el" href="../../d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">Handler</a> | <a class="el" href="../../dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">Init</a> | <a class="el" href="../../d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">Print Addon Name</a> | <a class="el" href="../../d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">Process Queue</a> | <a class="el" href="../../d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">Scheduler</a> | <a class="el" href="../../d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">Test</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,172 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: listRemove</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d1/d22/md__g_1_2ids_2dragonfly_2docs_2list_2list_remove.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">listRemove</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md318"></a>
|
||||||
|
autotoc_md318</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - List Remove icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md319"></a>
|
||||||
|
excerpt: Remove an element from a list stored at a key in DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md320"></a>
|
||||||
|
dragonfly_db_fnc_listRemove</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md321"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Removes a specific element from a list stored at a specified key in the DragonflyClient database. This function allows for precise control over list content by targeting individual elements by their index, without affecting other elements in the list. This is particularly useful for removing outdated or no longer needed entries.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md322"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _index] call dragonfly_db_fnc_listRemove</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md323"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone">_key </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">The key identifying the list from which to remove an element </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone">_index </td><td class="markdownTableBodyNone">Number </td><td class="markdownTableBodyNone">The zero-based index of the element to remove from the list </td><td class="markdownTableBodyNone">-1 </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md324"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously to remove the element immediately.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md325"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<p><b>Remove the first element from an event log:</b> </p><div class="fragment"><div class="line">["eventLog", 0] call dragonfly_db_fnc_listRemove;</div>
|
||||||
|
</div><!-- fragment --><p><b>Remove a specific player record:</b> </p><div class="fragment"><div class="line">["playerRecords", 5] call dragonfly_db_fnc_listRemove;</div>
|
||||||
|
</div><!-- fragment --><p><b>Remove an element from a multiplayer environment:</b> </p><div class="fragment"><div class="line">["sharedData", 2] remoteExecCall ["dragonfly_db_fnc_listRemove", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md326"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>This function removes only the element at the specified index. All other elements remain unchanged, though their indices may shift.</li>
|
||||||
|
<li>The index is zero-based, meaning the first element is at index 0, the second at index 1, and so on.</li>
|
||||||
|
<li>If an invalid index is provided (negative or exceeding the list length), the operation will not remove any elements.</li>
|
||||||
|
<li>The <code>_key</code> parameter must be a non-empty string, otherwise the function will exit without performing any action.</li>
|
||||||
|
<li>After removing an element, all subsequent elements shift down by one index to maintain a contiguous list.</li>
|
||||||
|
<li>The removal operation is permanent and cannot be undone except by re-adding the element.</li>
|
||||||
|
<li>All list operations are logged for debugging purposes.</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md327"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_listAdd</code>: Adds an element to a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listGet</code>: Retrieves a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listLoad</code>: Retrieves a range of elements from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listSet</code>: Replaces a specific element in a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md328"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../da/d2c/md__g_1_2ids_2dragonfly_2docs_2list_2list_add.html">List Add</a> | <a class="el" href="../../d3/ddf/md__g_1_2ids_2dragonfly_2docs_2list_2list_get.html">List Get</a> | <a class="el" href="../../d9/db3/md__g_1_2ids_2dragonfly_2docs_2list_2list_load.html">List Load</a> | <a class="el" href="../../d1/d22/md__g_1_2ids_2dragonfly_2docs_2list_2list_remove.html">List Remove</a> | <a class="el" href="../../d2/dc5/md__g_1_2ids_2dragonfly_2docs_2list_2list_set.html">List Set</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,184 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashGetAllId</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashGetAllId</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md191"></a>
|
||||||
|
autotoc_md191</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Get All ID icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md192"></a>
|
||||||
|
excerpt: Get all fields and values from the hash stored at key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md193"></a>
|
||||||
|
dragonfly_db_fnc_hashGetAllId</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md194"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Retrieves all fields and values from a specific hash table identified by its key. This function returns the complete hash table data for a specific ID through a callback function, allowing access to all stored key-value pairs associated with that ID. It's particularly useful for retrieving player-specific or entity-specific hash data.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md195"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _function, _call, _netId] call dragonfly_db_fnc_hashGetAllId</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md196"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Identifier of the hash table to retrieve </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the function to receive the retrieved data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to receive the data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md197"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The retrieved data is passed to the specified callback function asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md198"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md199"></a>
|
||||||
|
Retrieve a player's complete hash data:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGetAllId;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md200"></a>
|
||||||
|
Retrieve vehicle data with synchronous callback:</h3>
|
||||||
|
<div class="fragment"><div class="line">["vehicle_123", "dragonfly_db_fnc_processVehicleData", true] call dragonfly_db_fnc_hashGetAllId;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md201"></a>
|
||||||
|
Retrieve data and send it to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGetAllId", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md202"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Returns the complete hash table with all fields and values as a nested array</li>
|
||||||
|
<li>Both the key and callback function parameters are required and validated</li>
|
||||||
|
<li>The data is retrieved asynchronously through the extension's callback system</li>
|
||||||
|
<li>When a netId is provided, the data is sent to that specific client</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</li>
|
||||||
|
<li>This function retrieves from a specific hash table identified by <code>_key</code> - use <code>hashGetAll</code> for the global hash table</li>
|
||||||
|
<li>Player UIDs are commonly used as keys to store player-specific data</li>
|
||||||
|
<li>For large hash tables, retrieving all data may impact performance</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md203"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAll</code>: Retrieves all fields from the global hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetId</code>: Retrieves a specific field value from a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGet</code>: Retrieves a specific field value from the global hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetId</code>: Sets a field value in a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md204"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,186 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashGetId</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashGetId</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md205"></a>
|
||||||
|
autotoc_md205</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Get ID icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md206"></a>
|
||||||
|
excerpt: Get the value associated with field in hash stored at key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md207"></a>
|
||||||
|
dragonfly_db_fnc_hashGetId</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md208"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Retrieves the value of a specific field from a hash table identified by its key. This function allows targeted access to individual fields within a specific hash table, making it ideal for accessing particular attributes of player or entity data. The retrieved data is returned through a callback function.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md209"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _keyField, _function, _call, _netId] call dragonfly_db_fnc_hashGetId</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md210"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Identifier of the hash table </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_keyField</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the field in the hash to retrieve </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the function to receive the retrieved data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to receive the data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md211"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The retrieved data is passed to the specified callback function asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md212"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md213"></a>
|
||||||
|
Retrieve a player's loadout field:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "loadout", "dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGetId;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md214"></a>
|
||||||
|
Retrieve a specific vehicle property with synchronous callback:</h3>
|
||||||
|
<div class="fragment"><div class="line">["vehicle_123", "fuel", "dragonfly_db_fnc_processFuelData", true] call dragonfly_db_fnc_hashGetId;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md215"></a>
|
||||||
|
Retrieve data and send it to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "stats", "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGetId", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md216"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Retrieves a single field value from a specific hash table</li>
|
||||||
|
<li>All three primary parameters (key, keyField, and function) are required and validated</li>
|
||||||
|
<li>The data is retrieved asynchronously through the extension's callback system</li>
|
||||||
|
<li>When a netId is provided, the data is sent to that specific client</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</li>
|
||||||
|
<li>This function targets both a specific hash table (<code>_key</code>) and a specific field (<code>_keyField</code>)</li>
|
||||||
|
<li>More efficient than retrieving all hash fields when only one is needed</li>
|
||||||
|
<li>Player UIDs are commonly used as keys to store player-specific data</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md217"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGet</code>: Retrieves a field value from the global hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAllId</code>: Retrieves all fields from a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAll</code>: Retrieves all fields from the global hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetId</code>: Sets a field value in a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md218"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,174 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: listSet</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d2/dc5/md__g_1_2ids_2dragonfly_2docs_2list_2list_set.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">listSet</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md329"></a>
|
||||||
|
autotoc_md329</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - List Set icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md330"></a>
|
||||||
|
excerpt: Set an element in a list stored at a key in DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md331"></a>
|
||||||
|
dragonfly_db_fnc_listSet</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md332"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Updates or sets the value of a specific element at a given index in a list stored at a specified key in the DragonflyClient database. This function allows for precise modification of list contents by targeting individual elements without affecting other elements in the list. It is particularly useful for updating record information, modifying configuration data, or correcting entries.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md333"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _index, _data] call dragonfly_db_fnc_listSet</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md334"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone">_key </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">The key identifying the list in which to set an element </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone">_index </td><td class="markdownTableBodyNone">Number </td><td class="markdownTableBodyNone">The zero-based index of the element to set in the list </td><td class="markdownTableBodyNone">-1 </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone">_data </td><td class="markdownTableBodyNone">Array/String/Number/Boolean </td><td class="markdownTableBodyNone">The value to set at the specified index </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md335"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously to update the element immediately.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md336"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<p><b>Update an event log entry:</b> </p><div class="fragment"><div class="line">["eventLog", 0, ["Updated event information"]] call dragonfly_db_fnc_listSet;</div>
|
||||||
|
</div><!-- fragment --><p><b>Modify player statistics:</b> </p><div class="fragment"><div class="line">["playerStats", 3, [name player, score player, alive player]] call dragonfly_db_fnc_listSet;</div>
|
||||||
|
</div><!-- fragment --><p><b>Update configuration in multiplayer:</b> </p><div class="fragment"><div class="line">["missionConfig", 1, ["difficulty", "veteran"]] remoteExecCall ["dragonfly_db_fnc_listSet", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md337"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>This function updates only the element at the specified index. All other elements remain unchanged.</li>
|
||||||
|
<li>The index is zero-based, meaning the first element is at index 0, the second at index 1, and so on.</li>
|
||||||
|
<li>If the specified index does not exist in the list, the operation may fail or have no effect.</li>
|
||||||
|
<li>Both the <code>_key</code> parameter and <code>_data</code> parameter must be valid (non-empty string for key, non-nil for data), otherwise the function will exit without performing any action.</li>
|
||||||
|
<li>The function supports various data types, including arrays, strings, numbers, and booleans.</li>
|
||||||
|
<li>The update operation is permanent and will overwrite any previous value at the specified index.</li>
|
||||||
|
<li>All list operations are logged for debugging purposes.</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md338"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_listAdd</code>: Adds an element to a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listGet</code>: Retrieves a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listLoad</code>: Retrieves a range of elements from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listRemove</code>: Removes a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md339"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../da/d2c/md__g_1_2ids_2dragonfly_2docs_2list_2list_add.html">List Add</a> | <a class="el" href="../../d3/ddf/md__g_1_2ids_2dragonfly_2docs_2list_2list_get.html">List Get</a> | <a class="el" href="../../d9/db3/md__g_1_2ids_2dragonfly_2docs_2list_2list_load.html">List Load</a> | <a class="el" href="../../d1/d22/md__g_1_2ids_2dragonfly_2docs_2list_2list_remove.html">List Remove</a> | <a class="el" href="../../d2/dc5/md__g_1_2ids_2dragonfly_2docs_2list_2list_set.html">List Set</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
158
api/html/d2/dce/md__g_1_2ids_2dragonfly_2docs_2basic_2save.html
Normal file
158
api/html/d2/dce/md__g_1_2ids_2dragonfly_2docs_2basic_2save.html
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: save</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d2/dce/md__g_1_2ids_2dragonfly_2docs_2basic_2save.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">save</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md40"></a>
|
||||||
|
autotoc_md40</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Save DB icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md41"></a>
|
||||||
|
excerpt: Save DB to disc.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md42"></a>
|
||||||
|
dragonfly_db_fnc_save</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md43"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Saves the entire database to disk storage. This function persists all data (key-value pairs, hash tables, and lists) to a file, allowing it to be retrieved later even after server restart.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md44"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[] call dragonfly_db_fnc_save</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md45"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<p>None. The function saves the database without any parameters.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md46"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously and saves the database immediately.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md47"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md48"></a>
|
||||||
|
Save the database without creating a backup:</h3>
|
||||||
|
<div class="fragment"><div class="line">[] call dragonfly_db_fnc_save;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md49"></a>
|
||||||
|
Call the save function remotely from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[] remoteExecCall ["dragonfly_db_fnc_save", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md50"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>This function should be called periodically to ensure data persistence</li>
|
||||||
|
<li>Saving is a resource-intensive operation, so it shouldn't be called too frequently</li>
|
||||||
|
<li>Consider saving before mission end or during low-activity periods</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md51"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<p>None.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md52"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p>None. </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
175
api/html/d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.html
Normal file
175
api/html/d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.html
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: get</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">get</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md23"></a>
|
||||||
|
autotoc_md23</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Get Key icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md24"></a>
|
||||||
|
excerpt: Get the value of stored key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md25"></a>
|
||||||
|
dragonfly_db_fnc_get</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md26"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Retrieves the value of a stored key from the database. This function performs an asynchronous request to the database and passes the retrieved data to the specified callback function.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md27"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _function, _call, _netId] call dragonfly_db_fnc_get</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md28"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the stored key to retrieve from the database </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the function to call when data is retrieved </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to whom the data should be returned </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md29"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. When data is retrieved, it will be passed to the specified function. The operation runs asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md30"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md31"></a>
|
||||||
|
Retrieve data in singleplayer or on the server:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "dragonfly_db_fnc_test"] call dragonfly_db_fnc_get;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md32"></a>
|
||||||
|
Retrieve data on the server and send to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_get", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md33"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>The function exit with an error if the key or function parameters are empty</li>
|
||||||
|
<li>Data is processed through the scheduler system, which manages callback responses</li>
|
||||||
|
<li>For large data that exceeds buffer limits, it will be automatically chunked and reassembled</li>
|
||||||
|
<li>The callback function must be defined to accept the retrieved data</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the callback is executed directly or spawned in a separate thread</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md34"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_set</code>: Stores a value by key</li>
|
||||||
|
<li><code>dragonfly_db_fnc_delete</code>: Removes a value by key</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback response</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md35"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../df/d12/md__g_1_2ids_2dragonfly_2docs_2basic_2delete.html">Delete Key</a> | <a class="el" href="../../d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.html">Get Key</a> | <a class="el" href="../../d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.html">Set Key</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,186 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: listGet</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d3/ddf/md__g_1_2ids_2dragonfly_2docs_2list_2list_get.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">listGet</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md293"></a>
|
||||||
|
autotoc_md293</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - List Get icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md294"></a>
|
||||||
|
excerpt: Get element of list stored at key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md295"></a>
|
||||||
|
dragonfly_db_fnc_listGet</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md296"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Retrieves a specific element from a list stored in the database by its index. This function accesses a single item from a list using its position number and returns the data through a callback function. It's useful for accessing individual pieces of data from a sequence without retrieving the entire list.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md297"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _index, _function, _call, _netId] call dragonfly_db_fnc_listGet</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md298"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the list </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_index</code> </td><td class="markdownTableBodyNone">Number </td><td class="markdownTableBodyNone">Index position of the element to retrieve (0-based) </td><td class="markdownTableBodyNone">-1 </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the function to receive the retrieved data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to receive the data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md299"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The retrieved data is passed to the specified callback function asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md300"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md301"></a>
|
||||||
|
Retrieve a specific event log entry:</h3>
|
||||||
|
<div class="fragment"><div class="line">["events", 0, "dragonfly_db_fnc_test"] call dragonfly_db_fnc_listGet;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md302"></a>
|
||||||
|
Retrieve data with synchronous callback:</h3>
|
||||||
|
<div class="fragment"><div class="line">["messages", 5, "dragonfly_db_fnc_processMessage", true] call dragonfly_db_fnc_listGet;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md303"></a>
|
||||||
|
Retrieve data and send it to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["notifications", 0, "dragonfly_db_fnc_displayNotification", false, netId player] remoteExecCall ["dragonfly_db_fnc_listGet", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md304"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Retrieves a single element from a list by its index position</li>
|
||||||
|
<li>The key, index, and function parameters are required and validated</li>
|
||||||
|
<li>Index is zero-based (the first element is at index 0)</li>
|
||||||
|
<li>If the index is out of bounds or the list doesn't exist, no data will be returned</li>
|
||||||
|
<li>The data is retrieved asynchronously through the extension's callback system</li>
|
||||||
|
<li>When a netId is provided, the data is sent to that specific client</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</li>
|
||||||
|
<li>For retrieving multiple elements, use <code>listLoad</code> instead</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md305"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_listAdd</code>: Adds an element to a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listLoad</code>: Retrieves a range of elements from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listSet</code>: Replaces a specific element in a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listRemove</code>: Removes a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md306"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../da/d2c/md__g_1_2ids_2dragonfly_2docs_2list_2list_add.html">List Add</a> | <a class="el" href="../../d3/ddf/md__g_1_2ids_2dragonfly_2docs_2list_2list_get.html">List Get</a> | <a class="el" href="../../d9/db3/md__g_1_2ids_2dragonfly_2docs_2list_2list_load.html">List Load</a> | <a class="el" href="../../d1/d22/md__g_1_2ids_2dragonfly_2docs_2list_2list_remove.html">List Remove</a> | <a class="el" href="../../d2/dc5/md__g_1_2ids_2dragonfly_2docs_2list_2list_set.html">List Set</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,180 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: handler</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">handler</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md81"></a>
|
||||||
|
autotoc_md81</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Handler icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md82"></a>
|
||||||
|
excerpt: Handle data from DB.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md83"></a>
|
||||||
|
dragonfly_db_fnc_handler</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md84"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Handles data received from the database and routes it to the appropriate function. This function is a critical component of the callback system, receiving data from database operations and directing it to the specified function, either locally or to a remote client.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md85"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_uniqueID, _function, _call, _data, _netId] call dragonfly_db_fnc_handler</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md86"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_uniqueID</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Unique identifier for the data chunk </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of function to receive the data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_data</code> </td><td class="markdownTableBodyNone">Array, String, Number, or Boolean </td><td class="markdownTableBodyNone">The data retrieved from the database </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to receive the data </td><td class="markdownTableBodyNone">nil </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md87"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The data is passed to the specified function for processing.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md88"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md89"></a>
|
||||||
|
Process data locally:</h3>
|
||||||
|
<div class="fragment"><div class="line">["0123456789", "dragonfly_db_fnc_test", false, ["Hello World!"]] call dragonfly_db_fnc_handler;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md90"></a>
|
||||||
|
Send data to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["0123456789", "dragonfly_db_fnc_test", false, ["Hello World!"], netId player] remoteExecCall ["dragonfly_db_fnc_handler", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md91"></a>
|
||||||
|
Process data with direct call (synchronous):</h3>
|
||||||
|
<div class="fragment"><div class="line">["0123456789", "dragonfly_db_fnc_processInventory", true, [["weapon1", 30], ["item2", 5]]] call dragonfly_db_fnc_handler;</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md92"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>The function validates that both the function name and data are valid before proceeding</li>
|
||||||
|
<li>When a netId is provided, the data is sent to that specific client using remoteExec</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</li>
|
||||||
|
<li>This function is typically called by the scheduler or other core components rather than directly by user code</li>
|
||||||
|
<li>Each handler call is logged, which is useful for debugging data flow</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md93"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes callbacks from the database extension</li>
|
||||||
|
<li><code>dragonfly_db_fnc_fetch</code>: Assembles data chunks for large datasets</li>
|
||||||
|
<li><code>dragonfly_db_fnc_addTask</code>: Adds tasks to the database operation queue</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md94"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">Add Task</a> | <a class="el" href="../../d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">Handler</a> | <a class="el" href="../../dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">Init</a> | <a class="el" href="../../d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">Print Addon Name</a> | <a class="el" href="../../d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">Process Queue</a> | <a class="el" href="../../d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">Scheduler</a> | <a class="el" href="../../d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">Test</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,163 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: printAddonName</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">printAddonName</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md106"></a>
|
||||||
|
autotoc_md106</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Print Addon Name icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md107"></a>
|
||||||
|
excerpt: Displays the addon name in system chat.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md108"></a>
|
||||||
|
dragonfly_db_fnc_printAddonName</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md109"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Displays a thank you message with the addon name in the system chat. This is a simple utility function that can be used to acknowledge the use of the framework or to verify that the addon is properly loaded.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md110"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[] call dragonfly_db_fnc_printAddonName</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md111"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<p>None. This function does not require any parameters.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md112"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The function outputs a message to the system chat.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md113"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md114"></a>
|
||||||
|
Display the addon name message:</h3>
|
||||||
|
<div class="fragment"><div class="line">[] call dragonfly_db_fnc_printAddonName;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md115"></a>
|
||||||
|
Use in a welcome script:</h3>
|
||||||
|
<div class="fragment"><div class="line">if (isServer) then {</div>
|
||||||
|
<div class="line"> [] remoteExec ["dragonfly_db_fnc_printAddonName", 0, true];</div>
|
||||||
|
<div class="line">};</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md116"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>The function uses the ADDON macro defined in script_component.hpp</li>
|
||||||
|
<li>This displays a message directly in the player's system chat</li>
|
||||||
|
<li>Can be useful as a quick verification that the addon is loaded correctly</li>
|
||||||
|
<li>Often used during development or for first-time users</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md117"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_init</code>: Initializes the database system</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md118"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">Add Task</a> | <a class="el" href="../../d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">Handler</a> | <a class="el" href="../../dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">Init</a> | <a class="el" href="../../d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">Print Addon Name</a> | <a class="el" href="../../d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">Process Queue</a> | <a class="el" href="../../d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">Scheduler</a> | <a class="el" href="../../d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">Test</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
175
api/html/d4/d99/md__g_1_2ids_2dragonfly_2docs_2basic_2fetch.html
Normal file
175
api/html/d4/d99/md__g_1_2ids_2dragonfly_2docs_2basic_2fetch.html
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: fetch</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d4/d99/md__g_1_2ids_2dragonfly_2docs_2basic_2fetch.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">fetch</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md13"></a>
|
||||||
|
autotoc_md13</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Fetch icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md14"></a>
|
||||||
|
excerpt: Handles data chunks received from the database extension when data is too large to be returned in a single callback.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md15"></a>
|
||||||
|
dragonfly_db_fnc_fetch</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md16"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Handles data chunks received from the database extension when data is too large to be returned in a single callback. This function collects all chunks of data, reassembles them in the correct order, and then passes the complete data to the handler function.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md17"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_uniqueID, _function, _index, _total, _datachunk, _call, _netId] call dragonfly_db_fnc_fetch</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md18"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_uniqueID</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Unique identifier for this data fetch operation </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the function to call after data is assembled </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_index</code> </td><td class="markdownTableBodyNone">Number </td><td class="markdownTableBodyNone">Current chunk index (0-based) </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_total</code> </td><td class="markdownTableBodyNone">Number </td><td class="markdownTableBodyNone">Total number of chunks expected </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_datachunk</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">The chunk of data being received </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to whom the data belongs </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md19"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. When all chunks are received, the function will:</p><ol type="1">
|
||||||
|
<li>Assemble the complete data string</li>
|
||||||
|
<li>Parse it as a simple array</li>
|
||||||
|
<li>Call the specified handler function with the parsed data</li>
|
||||||
|
</ol>
|
||||||
|
<h2><a class="anchor" id="autotoc_md20"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<p>This function is typically not called directly but is triggered by the extension's callback mechanism when large datasets are retrieved.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md21"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>The function stores received chunks in the global array <code>dragonfly_db_fetch_array</code></li>
|
||||||
|
<li>Chunks are sorted by their index to ensure correct assembly regardless of arrival order</li>
|
||||||
|
<li>After successful processing, the chunks for this uniqueID are removed from the array</li>
|
||||||
|
<li>This function is essential for handling large datasets that exceed the callback buffer limit</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md22"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_handler</code>: Receives the assembled data and routes it to the appropriate function</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Manages the callback queue and triggers data fetching </li>
|
||||||
|
</ul>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,181 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashSetId</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashSetId</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md247"></a>
|
||||||
|
autotoc_md247</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Set ID icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md248"></a>
|
||||||
|
excerpt: Set the specified field to the respective value in the hash stored at key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md249"></a>
|
||||||
|
dragonfly_db_fnc_hashSetId</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md250"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Sets the value of a specified field in a specific hash table identified by its key. This function allows storing various data types (arrays, strings, numbers, or booleans) in a targeted hash table, making it ideal for player-specific or entity-specific data storage. It provides a way to organize related data under a common identifier.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md251"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _keyField, _data] call dragonfly_db_fnc_hashSetId</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md252"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Identifier of the hash table </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_keyField</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the field in the hash to set </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_data</code> </td><td class="markdownTableBodyNone">Array, String, Number, or Boolean </td><td class="markdownTableBodyNone">The value to store in the hash field </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md253"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously to store the data.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md254"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md255"></a>
|
||||||
|
Store a player's loadout under their UID:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "loadout", [getUnitLoadout player]] call dragonfly_db_fnc_hashSetId;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md256"></a>
|
||||||
|
Store vehicle data:</h3>
|
||||||
|
<div class="fragment"><div class="line">["vehicle_123", "status", [true, 100, 75, "active"]] call dragonfly_db_fnc_hashSetId;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md257"></a>
|
||||||
|
Store player data from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, "stats", [rank player, score player, name player]] remoteExecCall ["dragonfly_db_fnc_hashSetId", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md258"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Stores a single field-value pair in a specific hash table identified by <code>_key</code></li>
|
||||||
|
<li>All three parameters (key, keyField, and data) are required and validated</li>
|
||||||
|
<li>If the hash table doesn't exist, it will be created automatically</li>
|
||||||
|
<li>If the field already exists in the hash table, its value will be overwritten</li>
|
||||||
|
<li>Supports various data types: arrays, strings, numbers, and booleans</li>
|
||||||
|
<li>Player UIDs are commonly used as keys to store player-specific data</li>
|
||||||
|
<li>Complex data structures should be serialized into arrays</li>
|
||||||
|
<li>The operation is executed immediately and synchronously</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md259"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSet</code>: Sets a field value in the global hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetId</code>: Retrieves a field value from a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAllId</code>: Retrieves all fields from a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetIdBulk</code>: Sets multiple field-value pairs in multiple hash tables</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md260"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
173
api/html/d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html
Normal file
173
api/html/d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html
Normal file
@ -0,0 +1,173 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: test</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">test</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md149"></a>
|
||||||
|
autotoc_md149</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Test icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md150"></a>
|
||||||
|
excerpt: Test Function.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md151"></a>
|
||||||
|
dragonfly_db_fnc_test</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md152"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>A simple test function for verifying database operations. This function displays the received data in a hint message and logs it to the RPT file. It's primarily used for testing database retrieval operations and callback functionality.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md153"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_value] spawn dragonfly_db_fnc_test</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md154"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_value</code> </td><td class="markdownTableBodyNone">Array, String, Number, or Boolean </td><td class="markdownTableBodyNone">The value to display and log </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md155"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>The same value that was passed to the function. Also sets the global variable <code>dragonfly_db_test</code> to this value.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md156"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md157"></a>
|
||||||
|
Test with a simple string:</h3>
|
||||||
|
<div class="fragment"><div class="line">["Hello World!"] spawn dragonfly_db_fnc_test;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md158"></a>
|
||||||
|
Test database retrieval by specifying this as callback function:</h3>
|
||||||
|
<div class="fragment"><div class="line">["playerStats", "dragonfly_db_fnc_test"] call dragonfly_db_fnc_get;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md159"></a>
|
||||||
|
Test from client to server:</h3>
|
||||||
|
<div class="fragment"><div class="line">["Database is working!"] remoteExec ["dragonfly_db_fnc_test", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md160"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Displays the received value using <code>hint</code></li>
|
||||||
|
<li>Logs the same value to the RPT file</li>
|
||||||
|
<li>Stores the value in the global variable <code>dragonfly_db_test</code> for later inspection</li>
|
||||||
|
<li>Commonly used as a callback function for database operations</li>
|
||||||
|
<li>Useful for debugging and verifying data flow</li>
|
||||||
|
<li>Can be called directly or specified as a callback in other functions</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md161"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_get</code>: Retrieves values from the database</li>
|
||||||
|
<li><code>dragonfly_db_fnc_handler</code>: Routes data to callback functions</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Manages the callback system</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md162"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">Add Task</a> | <a class="el" href="../../d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">Handler</a> | <a class="el" href="../../dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">Init</a> | <a class="el" href="../../d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">Print Addon Name</a> | <a class="el" href="../../d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">Process Queue</a> | <a class="el" href="../../d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">Scheduler</a> | <a class="el" href="../../d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">Test</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
174
api/html/d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.html
Normal file
174
api/html/d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.html
Normal file
@ -0,0 +1,174 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: set</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">set</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md53"></a>
|
||||||
|
autotoc_md53</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Set Key icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md54"></a>
|
||||||
|
excerpt: Set the value of stored key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md55"></a>
|
||||||
|
dragonfly_db_fnc_set</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md56"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Stores a value in the database with the specified key. This function allows saving various data types (arrays, strings, numbers, or booleans) that can be retrieved later using the key.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md57"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _data] call dragonfly_db_fnc_set</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md58"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the key to store the data under </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_data</code> </td><td class="markdownTableBodyNone">Array, String, Number, or Boolean </td><td class="markdownTableBodyNone">The value to store in the database </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md59"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md60"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md61"></a>
|
||||||
|
Store a simple array:</h3>
|
||||||
|
<div class="fragment"><div class="line">["playerInventory", ["item1", "item2", "item3"]] call dragonfly_db_fnc_set;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md62"></a>
|
||||||
|
Store player data under their UID:</h3>
|
||||||
|
<div class="fragment"><div class="line">[getPlayerUID player, [name player, getPos player, getAllGear player]] call dragonfly_db_fnc_set;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md63"></a>
|
||||||
|
Call the set function remotely from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["serverSetting", [true, 30, "normal"]] remoteExecCall ["dragonfly_db_fnc_set", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md64"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>The function validates both the key and data before attempting to store</li>
|
||||||
|
<li>If the key already exists, its value will be overwritten</li>
|
||||||
|
<li>Complex data structures should be serialized into arrays</li>
|
||||||
|
<li>There are no size limits for data, but extremely large values might impact performance</li>
|
||||||
|
<li>For structured data, consider using hash tables instead of key-value pairs</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md65"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_get</code>: Retrieves a value by key</li>
|
||||||
|
<li><code>dragonfly_db_fnc_delete</code>: Removes a value by key</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback response</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md66"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../df/d12/md__g_1_2ids_2dragonfly_2docs_2basic_2delete.html">Delete Key</a> | <a class="el" href="../../d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.html">Get Key</a> | <a class="el" href="../../d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.html">Set Key</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,176 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: listLoad</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d9/db3/md__g_1_2ids_2dragonfly_2docs_2list_2list_load.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">listLoad</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md307"></a>
|
||||||
|
autotoc_md307</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - List Load icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md308"></a>
|
||||||
|
excerpt: Get all elements of a list stored at a key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md309"></a>
|
||||||
|
dragonfly_db_fnc_listLoad</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md310"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Retrieves all elements of a list stored at a specified key from the DragonflyClient database. This function is useful when you need to access the complete list data rather than individual elements, allowing operations on the entire dataset. The retrieved data is passed to a callback function for processing.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md311"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _function, _call, _netId] call dragonfly_db_fnc_listLoad</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md312"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone">_key </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">The key identifying the list to be retrieved </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone">_function </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">The name of the function that will receive the retrieved data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone">_call </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function in an unscheduled environment </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone">_netId </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">The NetID of the target to return data from the function (multiplayer only) </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md313"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>No value is returned directly. The retrieved list data is passed to the specified callback function asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md314"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<p><b>Retrieve all event logs:</b> </p><div class="fragment"><div class="line">["events", "myProject_fnc_processEventLogs"] call dragonfly_db_fnc_listLoad;</div>
|
||||||
|
</div><!-- fragment --><p><b>Retrieve a player list with synchronous callback:</b> </p><div class="fragment"><div class="line">["playerList", "myProject_fnc_processPlayerList", true] call dragonfly_db_fnc_listLoad;</div>
|
||||||
|
</div><!-- fragment --><p><b>Send mission data to a specific client:</b> </p><div class="fragment"><div class="line">["missionData", "myProject_fnc_processMissionData", false, netId player] remoteExecCall ["dragonfly_db_fnc_listLoad", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md315"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>This function retrieves the entire list stored at the specified key, making it useful when you need to process multiple elements together.</li>
|
||||||
|
<li>Both the <code>_key</code> and <code>_function</code> parameters are required. The function will exit without action if either is empty.</li>
|
||||||
|
<li>The retrieved data is processed asynchronously through the scheduler system and passed to the specified callback function.</li>
|
||||||
|
<li>For multiplayer scenarios, you can specify a target client using the <code>_netId</code> parameter to send the retrieved data to that specific client.</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the callback function is executed in an unscheduled environment (true) or scheduled environment (false).</li>
|
||||||
|
<li>This function uses the underlying "listrng" extension with a range from 0 to -1, which retrieves all elements in the list.</li>
|
||||||
|
<li>All list operations are logged for debugging purposes.</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md316"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_listAdd</code>: Adds an element to a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listGet</code>: Retrieves a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listSet</code>: Replaces a specific element in a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listRemove</code>: Removes a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md317"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../da/d2c/md__g_1_2ids_2dragonfly_2docs_2list_2list_add.html">List Add</a> | <a class="el" href="../../d3/ddf/md__g_1_2ids_2dragonfly_2docs_2list_2list_get.html">List Get</a> | <a class="el" href="../../d9/db3/md__g_1_2ids_2dragonfly_2docs_2list_2list_load.html">List Load</a> | <a class="el" href="../../d1/d22/md__g_1_2ids_2dragonfly_2docs_2list_2list_remove.html">List Remove</a> | <a class="el" href="../../d2/dc5/md__g_1_2ids_2dragonfly_2docs_2list_2list_set.html">List Set</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,184 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashGet</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashGet</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md163"></a>
|
||||||
|
autotoc_md163</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Get icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md164"></a>
|
||||||
|
excerpt: Get a field value from the current client's hash table in DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md165"></a>
|
||||||
|
dragonfly_db_fnc_hashGet</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md166"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Retrieves the value associated with a specific field in the hash table of the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <code>hashGetId</code> which requires manually specifying an ID. It accesses hash data asynchronously and returns the result through a callback function.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md167"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_keyField, _function, _call, _netId] call dragonfly_db_fnc_hashGet</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md168"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_keyField</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the field in the hash to retrieve </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the function to receive the retrieved data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to receive the data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md169"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The retrieved data is passed to the specified callback function asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md170"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md171"></a>
|
||||||
|
Retrieve a player's loadout:</h3>
|
||||||
|
<div class="fragment"><div class="line">["loadout", "dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGet;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md172"></a>
|
||||||
|
Retrieve data with synchronous callback:</h3>
|
||||||
|
<div class="fragment"><div class="line">["playerScore", "dragonfly_db_fnc_processScore", true] call dragonfly_db_fnc_hashGet;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md173"></a>
|
||||||
|
Retrieve data and send it to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["loadout", "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGet", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md174"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Retrieves a value from the current client's hash table</li>
|
||||||
|
<li>The data is retrieved asynchronously through the extension's callback system</li>
|
||||||
|
<li>Both the field name and callback function name must be provided</li>
|
||||||
|
<li>Input validation ensures both required parameters are non-empty</li>
|
||||||
|
<li>When a netId is provided, the data is sent to that specific client</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</li>
|
||||||
|
<li>This function automatically determines which hash table to use based on the caller's identity</li>
|
||||||
|
<li>Use <code>hashGetId</code> when you need to specify a particular hash table by ID</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md175"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetId</code>: Retrieves a field value from a specific hash table (when you need to specify the ID)</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAll</code>: Retrieves all fields from the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAllId</code>: Retrieves all fields from a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSet</code>: Sets a field value in the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md176"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,182 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashGetAll</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashGetAll</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md177"></a>
|
||||||
|
autotoc_md177</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Get All icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md178"></a>
|
||||||
|
excerpt: Get all fields from the current client's hash table in DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md179"></a>
|
||||||
|
dragonfly_db_fnc_hashGetAll</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md180"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Retrieves all fields and values from the hash table associated with the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <code>hashGetAllId</code> which requires manually specifying an ID. It returns the entire hash table data through a callback function, allowing access to all stored key-value pairs at once.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md181"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_function, _call, _netId] call dragonfly_db_fnc_hashGetAll</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md182"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the function to receive the retrieved data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">(Optional) NetID of the player to receive the data </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md183"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The retrieved data is passed to the specified callback function asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md184"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md185"></a>
|
||||||
|
Retrieve all client hash data:</h3>
|
||||||
|
<div class="fragment"><div class="line">["dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGetAll;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md186"></a>
|
||||||
|
Retrieve data with synchronous callback:</h3>
|
||||||
|
<div class="fragment"><div class="line">["dragonfly_db_fnc_processAllData", true] call dragonfly_db_fnc_hashGetAll;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md187"></a>
|
||||||
|
Retrieve data and send it to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGetAll", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md188"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Returns the complete hash table for the current client with all fields and values as a nested array</li>
|
||||||
|
<li>The data is retrieved asynchronously through the extension's callback system</li>
|
||||||
|
<li>The callback function name must be provided and is validated</li>
|
||||||
|
<li>When a netId is provided, the data is sent to that specific client</li>
|
||||||
|
<li>The <code>_call</code> parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)</li>
|
||||||
|
<li>This function automatically determines which hash table to use based on the caller's identity</li>
|
||||||
|
<li>Use <code>hashGetAllId</code> when you need to specify a particular hash table by ID</li>
|
||||||
|
<li>For large hash tables, retrieving all data may impact performance</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md189"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGet</code>: Retrieves a specific field value from the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetId</code>: Retrieves a specific field value from a specific hash table (when you need to specify the ID)</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAllId</code>: Retrieves all fields from a specific hash table (when you need to specify the ID)</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSet</code>: Sets a field value in the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md190"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,179 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: listAdd</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('da/d2c/md__g_1_2ids_2dragonfly_2docs_2list_2list_add.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">listAdd</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md279"></a>
|
||||||
|
autotoc_md279</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - List Add icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md280"></a>
|
||||||
|
excerpt: Add element to list stored at key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md281"></a>
|
||||||
|
dragonfly_db_fnc_listAdd</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md282"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Adds an element to a list stored in the database under the specified key. This function appends values to an existing list or creates a new list if it doesn't exist. It's particularly useful for logging, event tracking, or maintaining collections of data that grow over time.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md283"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key, _data] call dragonfly_db_fnc_listAdd</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md284"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the list to add the element to </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_data</code> </td><td class="markdownTableBodyNone">Array, String, Number, or Boolean </td><td class="markdownTableBodyNone">The value to insert into the list </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md285"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously to add the element to the list.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md286"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md287"></a>
|
||||||
|
Add an event log entry:</h3>
|
||||||
|
<div class="fragment"><div class="line">["events", ["Server state saved to DB " + systemTimeUTC]] call dragonfly_db_fnc_listAdd;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md288"></a>
|
||||||
|
Add a player message:</h3>
|
||||||
|
<div class="fragment"><div class="line">["messages", [name player + ": " + _messageText]] call dragonfly_db_fnc_listAdd;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md289"></a>
|
||||||
|
Add data from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["playerActions", [getPlayerUID player, name player, "logged in"]] remoteExecCall ["dragonfly_db_fnc_listAdd", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md290"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Elements are added to the end of the list in the order they are inserted</li>
|
||||||
|
<li>If the list doesn't exist, it will be created automatically</li>
|
||||||
|
<li>Both the key and data parameters are required and validated</li>
|
||||||
|
<li>Lists can store various data types (arrays, strings, numbers, or booleans)</li>
|
||||||
|
<li>Useful for maintaining a history of events, logs, or sequential data</li>
|
||||||
|
<li>The operation is executed immediately and synchronously</li>
|
||||||
|
<li>New elements are always added to the end of the list</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md291"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_listGet</code>: Retrieves a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listLoad</code>: Retrieves a range of elements from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listSet</code>: Replaces a specific element in a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_listRemove</code>: Removes a specific element from a list</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback from the database extension</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md292"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../da/d2c/md__g_1_2ids_2dragonfly_2docs_2list_2list_add.html">List Add</a> | <a class="el" href="../../d3/ddf/md__g_1_2ids_2dragonfly_2docs_2list_2list_get.html">List Get</a> | <a class="el" href="../../d9/db3/md__g_1_2ids_2dragonfly_2docs_2list_2list_load.html">List Load</a> | <a class="el" href="../../d1/d22/md__g_1_2ids_2dragonfly_2docs_2list_2list_remove.html">List Remove</a> | <a class="el" href="../../d2/dc5/md__g_1_2ids_2dragonfly_2docs_2list_2list_set.html">List Set</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,178 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashSetBulk</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashSetBulk</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md233"></a>
|
||||||
|
autotoc_md233</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Set Bulk icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md234"></a>
|
||||||
|
excerpt: Set multiple fields in the current client's hash table in DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md235"></a>
|
||||||
|
dragonfly_db_fnc_hashSetBulk</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md236"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Sets multiple field-value pairs in the hash table associated with the current client/player in a single operation. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <code>hashSetIdBulk</code> which requires manually specifying an ID. It allows efficiently storing multiple related fields at once, reducing the number of separate database calls required.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md237"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_data] call dragonfly_db_fnc_hashSetBulk</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md238"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_data</code> </td><td class="markdownTableBodyNone">Array </td><td class="markdownTableBodyNone">Array of alternating field names and values to store </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md239"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously to store all the data.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md240"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md241"></a>
|
||||||
|
Store player loadout and position:</h3>
|
||||||
|
<div class="fragment"><div class="line">[["loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] call dragonfly_db_fnc_hashSetBulk;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md242"></a>
|
||||||
|
Store multiple player settings:</h3>
|
||||||
|
<div class="fragment"><div class="line">[["difficulty", ["regular"], "respawn", [true], "tickets", [500]]] call dragonfly_db_fnc_hashSetBulk;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md243"></a>
|
||||||
|
Store player data from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[["name", [name player], "uid", [getPlayerUID player], "score", [score player]]] remoteExecCall ["dragonfly_db_fnc_hashSetBulk", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md244"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>The data array must be structured as alternating field names and values: <code>[field1, value1, field2, value2, ...]</code></li>
|
||||||
|
<li>Each field name must be a string</li>
|
||||||
|
<li>Values can be arrays, strings, numbers, or booleans</li>
|
||||||
|
<li>All field-value pairs are stored in a single database operation</li>
|
||||||
|
<li>If any of the fields already exist, their values will be overwritten</li>
|
||||||
|
<li>This function automatically determines which hash table to use based on the caller's identity</li>
|
||||||
|
<li>Use <code>hashSetIdBulk</code> when you need to specify a particular hash table by ID</li>
|
||||||
|
<li>More efficient than multiple individual <code>hashSet</code> calls when setting several fields</li>
|
||||||
|
<li>The operation is executed immediately and synchronously</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md245"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSet</code>: Sets a single field value in the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetIdBulk</code>: Sets multiple field-value pairs in a specific hash table (when you need to specify the ID)</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAll</code>: Retrieves all fields from the current client's hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGet</code>: Retrieves a specific field value from the current client's hash table </li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md246"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
157
api/html/dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html
Normal file
157
api/html/dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: init</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">init</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md95"></a>
|
||||||
|
autotoc_md95</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Initialization icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md96"></a>
|
||||||
|
excerpt: Initial Extension settings.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md97"></a>
|
||||||
|
dragonfly_db_fnc_init</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md98"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Initializes the ArmaDragonflyClient extension and sets up the initial settings. This function loads the extension, checks its version, sets the buffer size, and logs the initialization status. It is automatically called during mission startup.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md99"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">// This function is automatically called during initialization and doesn't need to be called directly</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md100"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<p>None. This function does not require any parameters.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md101"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The function sets up internal variables and logs initialization information.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md102"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<p>This function is automatically executed during framework initialization and doesn't need to be called manually.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md103"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Sets the global buffer size to 10240 bytes (10KB)</li>
|
||||||
|
<li>Logs the DLL version number for reference</li>
|
||||||
|
<li>Confirms successful loading of all functions</li>
|
||||||
|
<li>Outputs initialization status to the RPT logs</li>
|
||||||
|
<li>This is one of the first functions called when the framework loads</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md104"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_save</code>: Saves database data to disk</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md105"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">Add Task</a> | <a class="el" href="../../d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">Handler</a> | <a class="el" href="../../dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">Init</a> | <a class="el" href="../../d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">Print Addon Name</a> | <a class="el" href="../../d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">Process Queue</a> | <a class="el" href="../../d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">Scheduler</a> | <a class="el" href="../../d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">Test</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,186 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: addTask</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">addTask</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md67"></a>
|
||||||
|
autotoc_md67</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Add Task icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md68"></a>
|
||||||
|
excerpt: Add task to queue.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md69"></a>
|
||||||
|
dragonfly_db_fnc_addTask</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md70"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Adds a task to the database operation queue. This function is used to schedule database operations that can be processed sequentially, providing a way to manage multiple database requests in an organized manner.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md71"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_taskType, _key, _keyField, _index, _value, _function, _call, _netId] call dragonfly_db_fnc_addTask</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md72"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_taskType</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Type of operation to perform (e.g., "hgetall") </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the stored key </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_keyField</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Field name for hash operations </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_index</code> </td><td class="markdownTableBodyNone">Number </td><td class="markdownTableBodyNone">Index for list operations </td><td class="markdownTableBodyNone">-1 </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_value</code> </td><td class="markdownTableBodyNone">Array, String, Number, or Boolean </td><td class="markdownTableBodyNone">Value to store (for set operations) </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_function</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of function to call with the result </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_call</code> </td><td class="markdownTableBodyNone">Boolean </td><td class="markdownTableBodyNone">Whether to call the function directly (true) or spawn (false) </td><td class="markdownTableBodyNone">false </td></tr>
|
||||||
|
<tr class="markdownTableRowEven">
|
||||||
|
<td class="markdownTableBodyNone"><code>_netId</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">NetID of the target to receive the result </td><td class="markdownTableBodyNone">"" </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md73"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The task is added to the queue and processed asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md74"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md75"></a>
|
||||||
|
Add a hash table retrieval task:</h3>
|
||||||
|
<div class="fragment"><div class="line">["hgetall", "", "", -1, [], "dragonfly_db_fnc_test"] call dragonfly_db_fnc_addTask;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md76"></a>
|
||||||
|
Add a player-specific task that returns data to a specific client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["hgetallid", getPlayerUID player, "", -1, [], "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_addTask", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md77"></a>
|
||||||
|
Add a list operation task:</h3>
|
||||||
|
<div class="fragment"><div class="line">["listadd", "playerMessages", "", -1, ["New message content"], ""] call dragonfly_db_fnc_addTask;</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md78"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Tasks are processed in the order they are added to the queue</li>
|
||||||
|
<li>If the queue is not currently being processed, this function will start the processing</li>
|
||||||
|
<li>The task type determines which database operation will be performed</li>
|
||||||
|
<li>This function is particularly useful for scheduling multiple related operations</li>
|
||||||
|
<li>All operations performed through the task queue are logged for debugging</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md79"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_processQueue</code>: Processes the pending tasks in the queue</li>
|
||||||
|
<li><code>dragonfly_db_fnc_handler</code>: Handles the results of completed database operations</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Manages callback responses from the database</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md80"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">Add Task</a> | <a class="el" href="../../d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">Handler</a> | <a class="el" href="../../dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">Init</a> | <a class="el" href="../../d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">Print Addon Name</a> | <a class="el" href="../../d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">Process Queue</a> | <a class="el" href="../../d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">Scheduler</a> | <a class="el" href="../../d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">Test</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,179 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: hashSetIdBulk</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hashSetIdBulk</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md261"></a>
|
||||||
|
autotoc_md261</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Hash Set ID Bulk icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md262"></a>
|
||||||
|
excerpt: Set the specified fields to their respective values in the hash stored at key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md263"></a>
|
||||||
|
dragonfly_db_fnc_hashSetIdBulk</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md264"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Sets multiple field-value pairs in a specific hash table identified by its key in a single operation. This function allows efficiently storing multiple related fields at once for a specific identifier, reducing the number of separate database calls required. It's ideal for saving a collection of player-specific or entity-specific data.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md265"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_data] call dragonfly_db_fnc_hashSetIdBulk</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md266"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th><th class="markdownTableHeadNone">Default </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_data</code> </td><td class="markdownTableBodyNone">Array </td><td class="markdownTableBodyNone">Array with key followed by alternating field names and values </td><td class="markdownTableBodyNone">[] </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md267"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs synchronously to store all the data.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md268"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md269"></a>
|
||||||
|
Store player loadout and position:</h3>
|
||||||
|
<div class="fragment"><div class="line">[[getPlayerUID player, "loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] call dragonfly_db_fnc_hashSetIdBulk;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md270"></a>
|
||||||
|
Store multiple vehicle properties:</h3>
|
||||||
|
<div class="fragment"><div class="line">[["vehicle_123", "fuel", [0.75], "damage", [0.2], "crew", [["player1", "player2"]]]] call dragonfly_db_fnc_hashSetIdBulk;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md271"></a>
|
||||||
|
Store player data from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">[[getPlayerUID player, "stats", [score player], "inventory", [getAllGear player]]] remoteExecCall ["dragonfly_db_fnc_hashSetIdBulk", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md272"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>The data array must be structured with the key first, followed by alternating field names and values: <code>[key, field1, value1, field2, value2, ...]</code></li>
|
||||||
|
<li>The key must be a string that identifies the specific hash table</li>
|
||||||
|
<li>Each field name must be a string</li>
|
||||||
|
<li>Values can be arrays, strings, numbers, or booleans</li>
|
||||||
|
<li>All field-value pairs are stored in a single database operation</li>
|
||||||
|
<li>If the hash table doesn't exist, it will be created automatically</li>
|
||||||
|
<li>If any of the fields already exist in the hash table, their values will be overwritten</li>
|
||||||
|
<li>More efficient than multiple individual <code>hashSetId</code> calls when setting several fields</li>
|
||||||
|
<li>Player UIDs are commonly used as keys to store player-specific data</li>
|
||||||
|
<li>The operation is executed immediately and synchronously</li>
|
||||||
|
<li>All operations are logged for debugging purposes</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md273"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetId</code>: Sets a single field value in a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashSetBulk</code>: Sets multiple field-value pairs in the global hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetAllId</code>: Retrieves all fields from a specific hash table</li>
|
||||||
|
<li><code>dragonfly_db_fnc_hashGetId</code>: Retrieves a specific field value from a specific hash table</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md274"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">Hash Get</a> | <a class="el" href="../../da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">Hash Get All</a> | <a class="el" href="../../d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">Hash Get All ID</a> | <a class="el" href="../../d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">Hash Get ID</a> | <a class="el" href="../../d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">Hash Set</a> | <a class="el" href="../../da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">Hash Set Bulk</a> | <a class="el" href="../../d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">Hash Set ID</a> | <a class="el" href="../../de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">Hash Set ID Bulk</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,167 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: delete</title>
|
||||||
|
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="../../clipboard.js"></script>
|
||||||
|
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="../../resize.js"></script>
|
||||||
|
<script type="text/javascript" src="../../cookie.js"></script>
|
||||||
|
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="../../search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(1); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('df/d12/md__g_1_2ids_2dragonfly_2docs_2basic_2delete.html','../../'); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div><div class="header">
|
||||||
|
<div class="headertitle"><div class="title">delete</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<div class="textblock"><h2><a class="anchor" id="autotoc_md0"></a>
|
||||||
|
autotoc_md0</h2>
|
||||||
|
<p>title: ArmaDragonflyClient - Delete Key icon: mdi:file-text-outline </p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md1"></a>
|
||||||
|
excerpt: Remove the specified key from DragonflyClient.</h2>
|
||||||
|
<h1><a class="anchor" id="autotoc_md2"></a>
|
||||||
|
dragonfly_db_fnc_delete</h1>
|
||||||
|
<h2><a class="anchor" id="autotoc_md3"></a>
|
||||||
|
Description</h2>
|
||||||
|
<p>Removes the specified key from the database. This function deletes the key-value pair completely from storage.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md4"></a>
|
||||||
|
Syntax</h2>
|
||||||
|
<div class="fragment"><div class="line">[_key] call dragonfly_db_fnc_delete</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md5"></a>
|
||||||
|
Parameters</h2>
|
||||||
|
<table class="markdownTable">
|
||||||
|
<tr class="markdownTableHead">
|
||||||
|
<th class="markdownTableHeadNone">Parameter </th><th class="markdownTableHeadNone">Type </th><th class="markdownTableHeadNone">Description </th></tr>
|
||||||
|
<tr class="markdownTableRowOdd">
|
||||||
|
<td class="markdownTableBodyNone"><code>_key</code> </td><td class="markdownTableBodyNone">String </td><td class="markdownTableBodyNone">Name of the key to delete from the database </td></tr>
|
||||||
|
</table>
|
||||||
|
<h2><a class="anchor" id="autotoc_md6"></a>
|
||||||
|
Return Value</h2>
|
||||||
|
<p>None. The operation runs asynchronously.</p>
|
||||||
|
<h2><a class="anchor" id="autotoc_md7"></a>
|
||||||
|
Examples</h2>
|
||||||
|
<h3><a class="anchor" id="autotoc_md8"></a>
|
||||||
|
Delete a key in singleplayer or on the server:</h3>
|
||||||
|
<div class="fragment"><div class="line">["playerData"] call dragonfly_db_fnc_delete;</div>
|
||||||
|
</div><!-- fragment --><h3><a class="anchor" id="autotoc_md9"></a>
|
||||||
|
Delete a key on the server from a client:</h3>
|
||||||
|
<div class="fragment"><div class="line">["playerData"] remoteExecCall ["dragonfly_db_fnc_delete", 2, false];</div>
|
||||||
|
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md10"></a>
|
||||||
|
Notes</h2>
|
||||||
|
<ul>
|
||||||
|
<li>This operation is permanent and cannot be undone</li>
|
||||||
|
<li>If the key doesn't exist, the operation will have no effect</li>
|
||||||
|
<li>This function only affects specific keys, not hash tables or lists</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md11"></a>
|
||||||
|
Related Functions</h2>
|
||||||
|
<ul>
|
||||||
|
<li><code>dragonfly_db_fnc_get</code>: Retrieves a value by key</li>
|
||||||
|
<li><code>dragonfly_db_fnc_set</code>: Stores a value by key</li>
|
||||||
|
<li><code>dragonfly_db_fnc_scheduler</code>: Processes the callback response</li>
|
||||||
|
</ul>
|
||||||
|
<h2><a class="anchor" id="autotoc_md12"></a>
|
||||||
|
Links</h2>
|
||||||
|
<p><a class="el" href="../../df/d12/md__g_1_2ids_2dragonfly_2docs_2basic_2delete.html">Delete Key</a> | <a class="el" href="../../d3/dcb/md__g_1_2ids_2dragonfly_2docs_2basic_2get.html">Get Key</a> | <a class="el" href="../../d9/d9c/md__g_1_2ids_2dragonfly_2docs_2basic_2set.html">Set Key</a> </p>
|
||||||
|
</div></div><!-- contents -->
|
||||||
|
</div><!-- PageDoc -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
145
api/html/dir_10eb6422e80bd721a9a7af022f58c68b.html
Normal file
145
api/html/dir_10eb6422e80bd721a9a7af022f58c68b.html
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: G:/ids/dragonfly/docs/core Directory Reference</title>
|
||||||
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="clipboard.js"></script>
|
||||||
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="resize.js"></script>
|
||||||
|
<script type="text/javascript" src="cookie.js"></script>
|
||||||
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(0); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('dir_10eb6422e80bd721a9a7af022f58c68b.html',''); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="header">
|
||||||
|
<div class="headertitle"><div class="title">core Directory Reference</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||||
|
<p>This section contains documentation for the core functions of ArmaDragonflyClient that handle initialization, process management, and scheduling.</p>
|
||||||
|
<h1><a class="anchor" id="autotoc_md133"></a>
|
||||||
|
Available Functions</h1>
|
||||||
|
<ul>
|
||||||
|
<li><a class="el" href="dd/d3b/md__g_1_2ids_2dragonfly_2docs_2core_2add_task.html">addTask</a> - Add a task to the scheduler</li>
|
||||||
|
<li><a class="el" href="d4/d43/md__g_1_2ids_2dragonfly_2docs_2core_2handler.html">handler</a> - Handle callbacks from the extension</li>
|
||||||
|
<li><a class="el" href="dc/d36/md__g_1_2ids_2dragonfly_2docs_2core_2init.html">init</a> - Initialize the database system</li>
|
||||||
|
<li><a class="el" href="d4/d7c/md__g_1_2ids_2dragonfly_2docs_2core_2print_addon_name.html">printAddonName</a> - Print the addon name</li>
|
||||||
|
<li><a class="el" href="d0/d0e/md__g_1_2ids_2dragonfly_2docs_2core_2process_queue.html">processQueue</a> - Process queued database operations</li>
|
||||||
|
<li><a class="el" href="d0/df6/md__g_1_2ids_2dragonfly_2docs_2core_2scheduler.html">scheduler</a> - Schedule database operations</li>
|
||||||
|
<li><a class="el" href="d6/d7e/md__g_1_2ids_2dragonfly_2docs_2core_2test.html">test</a> - Test the database connection</li>
|
||||||
|
</ul>
|
||||||
|
<h1><a class="anchor" id="autotoc_md134"></a>
|
||||||
|
Example Usage</h1>
|
||||||
|
<div class="fragment"><div class="line">// Initialize the database</div>
|
||||||
|
<div class="line">[] call dragonfly_db_fnc_init;</div>
|
||||||
|
<div class="line"> </div>
|
||||||
|
<div class="line">// Test the database connection</div>
|
||||||
|
<div class="line">[] call dragonfly_db_fnc_test;</div>
|
||||||
|
</div><!-- fragment --><h1><a class="anchor" id="autotoc_md135"></a>
|
||||||
|
Related Categories</h1>
|
||||||
|
<ul>
|
||||||
|
<li>Basic Data Operations</li>
|
||||||
|
<li>Hash Operations</li>
|
||||||
|
<li>List Operations </li>
|
||||||
|
</ul>
|
||||||
|
</div><!-- contents -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="navelem"><a class="el" href="dir_4373328136309bbaba010b91e95ca4c6.html">dragonfly</a></li><li class="navelem"><a class="el" href="dir_6b1f4820e2481aa5a1ea9b2275f196d9.html">docs</a></li><li class="navelem"><a class="el" href="dir_10eb6422e80bd721a9a7af022f58c68b.html">core</a></li>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
157
api/html/dir_1d1eabba2c636e67297dc8cee9bc9944.html
Normal file
157
api/html/dir_1d1eabba2c636e67297dc8cee9bc9944.html
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: G:/ids/dragonfly/docs/hash Directory Reference</title>
|
||||||
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="clipboard.js"></script>
|
||||||
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="resize.js"></script>
|
||||||
|
<script type="text/javascript" src="cookie.js"></script>
|
||||||
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(0); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('dir_1d1eabba2c636e67297dc8cee9bc9944.html',''); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="header">
|
||||||
|
<div class="headertitle"><div class="title">hash Directory Reference</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||||
|
<p>This section contains documentation for the hash operations of ArmaDragonflyClient that allow for working with hash tables (key-value pairs within a namespace).</p>
|
||||||
|
<h1><a class="anchor" id="autotoc_md276"></a>
|
||||||
|
Available Functions</h1>
|
||||||
|
<ul>
|
||||||
|
<li><a class="el" href="d9/de8/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get.html">hashGet</a> - Get a field from a hash</li>
|
||||||
|
<li><a class="el" href="da/d08/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all.html">hashGetAll</a> - Get all fields from a hash</li>
|
||||||
|
<li><a class="el" href="d2/d23/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_all_id.html">hashGetAllId</a> - Get all fields from a hash for a specific ID</li>
|
||||||
|
<li><a class="el" href="d2/d28/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_get_id.html">hashGetId</a> - Get a field from a hash for a specific ID</li>
|
||||||
|
<li><a class="el" href="d0/df2/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set.html">hashSet</a> - Set a field in a hash</li>
|
||||||
|
<li><a class="el" href="da/d74/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_bulk.html">hashSetBulk</a> - Set multiple fields in a hash in one operation</li>
|
||||||
|
<li><a class="el" href="d4/d99/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id.html">hashSetId</a> - Set a field in a hash for a specific ID</li>
|
||||||
|
<li><a class="el" href="de/da6/md__g_1_2ids_2dragonfly_2docs_2hash_2hash_set_id_bulk.html">hashSetIdBulk</a> - Set multiple fields in a hash for a specific ID in one operation</li>
|
||||||
|
</ul>
|
||||||
|
<h1><a class="anchor" id="autotoc_md277"></a>
|
||||||
|
Example Usage</h1>
|
||||||
|
<div class="fragment"><div class="line">// Context mode examples</div>
|
||||||
|
<div class="line">["myField", [myValue]] call dragonfly_db_fnc_hashSet;</div>
|
||||||
|
<div class="line">["myField", "myFunction"] call dragonfly_db_fnc_hashGet;</div>
|
||||||
|
<div class="line">["myFunction"] call dragonfly_db_fnc_hashGetAll;</div>
|
||||||
|
<div class="line"> </div>
|
||||||
|
<div class="line">// Set multiple hash fields in one operation</div>
|
||||||
|
<div class="line">[[</div>
|
||||||
|
<div class="line"> "loadout", [getUnitLoadout player],</div>
|
||||||
|
<div class="line"> "position", [getPosASL player],</div>
|
||||||
|
<div class="line"> "direction", [getDir player]</div>
|
||||||
|
<div class="line">]] call dragonfly_db_fnc_hashSetBulk;</div>
|
||||||
|
<div class="line"> </div>
|
||||||
|
<div class="line">// ID-specific examples</div>
|
||||||
|
<div class="line">["myHash", "myField", [myValue]] call dragonfly_db_fnc_hashSetId;</div>
|
||||||
|
<div class="line">["myHash", "myField", "myFunction"] call dragonfly_db_fnc_hashGetId;</div>
|
||||||
|
<div class="line">["myHash"] call dragonfly_db_fnc_hashGetAllId;</div>
|
||||||
|
</div><!-- fragment --><h1><a class="anchor" id="autotoc_md278"></a>
|
||||||
|
Related Categories</h1>
|
||||||
|
<ul>
|
||||||
|
<li>Core Functions</li>
|
||||||
|
<li>Basic Data Operations</li>
|
||||||
|
<li>List Operations </li>
|
||||||
|
</ul>
|
||||||
|
</div><!-- contents -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="navelem"><a class="el" href="dir_4373328136309bbaba010b91e95ca4c6.html">dragonfly</a></li><li class="navelem"><a class="el" href="dir_6b1f4820e2481aa5a1ea9b2275f196d9.html">docs</a></li><li class="navelem"><a class="el" href="dir_1d1eabba2c636e67297dc8cee9bc9944.html">hash</a></li>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
124
api/html/dir_4373328136309bbaba010b91e95ca4c6.html
Normal file
124
api/html/dir_4373328136309bbaba010b91e95ca4c6.html
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||||
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||||
|
<title>ArmaDragonflyClient: G:/ids/dragonfly Directory Reference</title>
|
||||||
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="dynsections.js"></script>
|
||||||
|
<script type="text/javascript" src="clipboard.js"></script>
|
||||||
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="navtreedata.js"></script>
|
||||||
|
<script type="text/javascript" src="navtree.js"></script>
|
||||||
|
<script type="text/javascript" src="resize.js"></script>
|
||||||
|
<script type="text/javascript" src="cookie.js"></script>
|
||||||
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||||
|
<script type="text/javascript" src="search/search.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { init_search(); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||||
|
<div id="titlearea">
|
||||||
|
<table cellspacing="0" cellpadding="0">
|
||||||
|
<tbody>
|
||||||
|
<tr id="projectrow">
|
||||||
|
<td id="projectalign">
|
||||||
|
<div id="projectname">ArmaDragonflyClient
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td> <div id="MSearchBox" class="MSearchBoxInactive">
|
||||||
|
<span class="left">
|
||||||
|
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
|
||||||
|
<input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
|
||||||
|
onfocus="searchBox.OnSearchFieldFocus(true)"
|
||||||
|
onblur="searchBox.OnSearchFieldFocus(false)"
|
||||||
|
onkeyup="searchBox.OnSearchFieldChange(event)"/>
|
||||||
|
</span><span class="right">
|
||||||
|
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- end header part -->
|
||||||
|
<!-- Generated by Doxygen 1.13.2 -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function() { codefold.init(0); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
</div><!-- top -->
|
||||||
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||||
|
<div id="nav-tree">
|
||||||
|
<div id="nav-tree-contents">
|
||||||
|
<div id="nav-sync" class="sync"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="splitbar" style="-moz-user-select:none;"
|
||||||
|
class="ui-resizable-handle">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||||
|
$(function(){initNavTree('dir_4373328136309bbaba010b91e95ca4c6.html',''); initResizable(true); });
|
||||||
|
/* @license-end */
|
||||||
|
</script>
|
||||||
|
<div id="doc-content">
|
||||||
|
<!-- window showing the filter options -->
|
||||||
|
<div id="MSearchSelectWindow"
|
||||||
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||||
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||||
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- iframe showing the search results (closed by default) -->
|
||||||
|
<div id="MSearchResultsWindow">
|
||||||
|
<div id="MSearchResults">
|
||||||
|
<div class="SRPage">
|
||||||
|
<div id="SRIndex">
|
||||||
|
<div id="SRResults"></div>
|
||||||
|
<div class="SRStatus" id="Loading">Loading...</div>
|
||||||
|
<div class="SRStatus" id="Searching">Searching...</div>
|
||||||
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="header">
|
||||||
|
<div class="headertitle"><div class="title">dragonfly Directory Reference</div></div>
|
||||||
|
</div><!--header-->
|
||||||
|
<div class="contents">
|
||||||
|
<table class="memberdecls">
|
||||||
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="subdirs" name="subdirs"></a>
|
||||||
|
Directories</h2></td></tr>
|
||||||
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span> </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_6b1f4820e2481aa5a1ea9b2275f196d9.html">docs</a></td></tr>
|
||||||
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||||
|
</table>
|
||||||
|
</div><!-- contents -->
|
||||||
|
</div><!-- doc-content -->
|
||||||
|
<!-- start footer part -->
|
||||||
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||||
|
<ul>
|
||||||
|
<li class="navelem"><a class="el" href="dir_4373328136309bbaba010b91e95ca4c6.html">dragonfly</a></li>
|
||||||
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user