libamxd  6.4.1
Data Model Manager
amxd_action.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** SPDX-License-Identifier: BSD-2-Clause-Patent
4 **
5 ** SPDX-FileCopyrightText: Copyright (c) 2023 SoftAtHome
6 **
7 ** Redistribution and use in source and binary forms, with or without modification,
8 ** are permitted provided that the following conditions are met:
9 **
10 ** 1. Redistributions of source code must retain the above copyright notice,
11 ** this list of conditions and the following disclaimer.
12 **
13 ** 2. Redistributions in binary form must reproduce the above copyright notice,
14 ** this list of conditions and the following disclaimer in the documentation
15 ** and/or other materials provided with the distribution.
16 **
17 ** Subject to the terms and conditions of this license, each copyright holder
18 ** and contributor hereby grants to those receiving rights under this license
19 ** a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable
20 ** (except for failure to satisfy the conditions of this license) patent license
21 ** to make, have made, use, offer to sell, sell, import, and otherwise transfer
22 ** this software, where such license applies only to those patent claims, already
23 ** acquired or hereafter acquired, licensable by such copyright holder or contributor
24 ** that are necessarily infringed by:
25 **
26 ** (a) their Contribution(s) (the licensed copyrights of copyright holders and
27 ** non-copyrightable additions of contributors, in source or binary form) alone;
28 ** or
29 **
30 ** (b) combination of their Contribution(s) with the work of authorship to which
31 ** such Contribution(s) was added by such copyright holder or contributor, if,
32 ** at the time the Contribution is added, such addition causes such combination
33 ** to be necessarily infringed. The patent license shall not apply to any other
34 ** combinations which include the Contribution.
35 **
36 ** Except as expressly stated above, no rights or licenses from any copyright
37 ** holder or contributor is granted under this license, whether expressly, by
38 ** implication, estoppel or otherwise.
39 **
40 ** DISCLAIMER
41 **
42 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
43 ** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
44 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
45 ** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
46 ** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
47 ** DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
48 ** SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
49 ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
50 ** OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
51 ** USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
52 **
53 ****************************************************************************/
54 
55 #if !defined(__AMXD_ACTION_H__)
56 #define __AMXD_ACTION_H__
57 
58 #ifdef __cplusplus
59 extern "C"
60 {
61 #endif
62 
63 #include <stdint.h>
64 #include <amxd/amxd_types.h>
65 
147  amxd_param_t* param,
148  amxd_action_t reason,
149  const amxc_var_t* const args,
150  amxc_var_t* const retval,
151  void* priv);
152 
186  amxd_param_t* param,
187  amxd_action_t reason,
188  const amxc_var_t* const args,
189  amxc_var_t* const retval,
190  void* priv);
191 
227  amxd_param_t* param,
228  amxd_action_t reason,
229  const amxc_var_t* const args,
230  amxc_var_t* const retval,
231  void* priv);
232 
258  amxd_param_t* param,
259  amxd_action_t reason,
260  const amxc_var_t* const args,
261  amxc_var_t* const retval,
262  void* priv);
263 
308  amxd_param_t* param,
309  amxd_action_t reason,
310  const amxc_var_t* const args,
311  amxc_var_t* const retval,
312  void* priv);
313 
349  amxd_param_t* param,
350  amxd_action_t reason,
351  const amxc_var_t* const args,
352  amxc_var_t* const retval,
353  void* priv);
354 
390  amxd_param_t* param,
391  amxd_action_t reason,
392  const amxc_var_t* const args,
393  amxc_var_t* const retval,
394  void* priv);
395 
425  amxd_param_t* param,
426  amxd_action_t reason,
427  const amxc_var_t* const args,
428  amxc_var_t* const retval,
429  void* priv);
430 
461  amxd_param_t* param,
462  amxd_action_t reason,
463  const amxc_var_t* const args,
464  amxc_var_t* const retval,
465  void* priv);
466 
467 void amxd_param_build_description(amxc_var_t* description,
468  const char* name,
469  uint32_t type_id,
470  uint32_t attrs,
471  amxc_var_t* flags);
472 
543  amxd_param_t* param,
544  amxd_action_t reason,
545  const amxc_var_t* const args,
546  amxc_var_t* const retval,
547  void* priv);
548 
580  amxd_param_t* param,
581  amxd_action_t reason,
582  const amxc_var_t* const args,
583  amxc_var_t* const retval,
584  void* priv);
585 
677  amxd_param_t* const param,
678  amxd_action_t reason,
679  const amxc_var_t* const args,
680  amxc_var_t* const retval,
681  void* priv);
682 
801  amxd_param_t* param,
802  amxd_action_t reason,
803  const amxc_var_t* const args,
804  amxc_var_t* const retval,
805  void* priv);
806 
807 amxd_status_t amxd_action_object_read_filter(amxc_string_t* filter,
808  const amxc_var_t* args);
809 
811  amxd_param_t* const param,
812  amxd_action_t reason,
813  const amxc_var_t* const args,
814  amxc_var_t* const retval,
815  void* priv);
816 
818  amxd_param_t* const param,
819  amxd_action_t reason,
820  const amxc_var_t* const args,
821  amxc_var_t* const retval,
822  void* priv);
823 
825  amxd_param_t* const param,
826  amxd_action_t reason,
827  const amxc_var_t* const args,
828  amxc_var_t* const retval,
829  void* priv);
830 
832  amxd_param_t* const param,
833  amxd_action_t reason,
834  const amxc_var_t* const args,
835  amxc_var_t* const retval,
836  void* priv);
837 
870  amxd_param_t* const param,
871  amxd_action_t reason,
872  const amxc_var_t* const args,
873  amxc_var_t* const retval,
874  void* priv);
875 
902  amxd_param_t* const param,
903  amxd_action_t reason,
904  const amxc_var_t* const args,
905  amxc_var_t* const retval,
906  void* priv);
907 #ifdef __cplusplus
908 }
909 #endif
910 
911 #endif // __AMXD_ACTION_H__
912 
amxd_status_t amxd_action_object_read(amxd_object_t *const object, amxd_param_t *const param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
void amxd_param_build_description(amxc_var_t *description, const char *name, uint32_t type_id, uint32_t attrs, amxc_var_t *flags)
amxd_status_t amxd_action_object_del_inst(amxd_object_t *const object, amxd_param_t *const param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
amxd_status_t amxd_action_object_write(amxd_object_t *const object, amxd_param_t *const param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
amxd_status_t amxd_action_object_add_inst(amxd_object_t *const object, amxd_param_t *const param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
amxd_status_t amxd_action_object_read_filter(amxc_string_t *filter, const amxc_var_t *args)
enum _amxd_action amxd_action_t
enum _amxd_status amxd_status_t
amxd_status_t amxd_action_object_validate(amxd_object_t *const object, amxd_param_t *const param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default object validate action implementation.
amxd_status_t amxd_action_object_list(amxd_object_t *const object, amxd_param_t *const param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default object list action implementation.
amxd_status_t amxd_action_object_describe(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default object describe action implementation.
amxd_status_t amxd_action_object_destroy(amxd_object_t *object, amxd_param_t *const param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default object destroy action implementation.
amxd_status_t amxd_action_param_check_range(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default check range parameter validate action implementation.
amxd_status_t amxd_action_param_check_is_in(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default check is in parameter validate action implementation.
amxd_status_t amxd_action_param_write(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default parameter write action implementation.
amxd_status_t amxd_action_param_describe(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default parameter describe action implementation.
amxd_status_t amxd_action_param_read_hidden_value(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default parameter read action implementation for hidden values.
amxd_status_t amxd_action_param_check_enum(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default check enum parameter validate action implementation.
amxd_status_t amxd_action_param_validate(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default parameter validate action implementation.
amxd_status_t amxd_action_param_read(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default parameter read action implementation.
amxd_status_t amxd_action_param_check_maximum(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default check maximum parameter validate action implementation.
amxd_status_t amxd_action_param_check_minimum(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default check minimum parameter validate action implementation.
amxd_status_t amxd_action_param_destroy(amxd_object_t *object, amxd_param_t *param, amxd_action_t reason, const amxc_var_t *const args, amxc_var_t *const retval, void *priv)
Default parameter destroy action implementation.