DTNMA Reference Tools v2.1.0 - 13.gc5c0bac
Delay-Tolerant Networking Management Architecture (DTNMA) Tool Suite
Loading...
Searching...
No Matches
cace_ari_translator_t Struct Reference

Function pointers to implement the cace_ari_translate() behavior. More...

#include <algo.h>

+ Collaboration diagram for cace_ari_translator_t:

Data Fields

cace_ari_translate_result_t(* map_ari )(cace_ari_t *out, const cace_ari_t *in, const cace_ari_translate_ctx_t *ctx)
 Called when translating each ARI.
 
int(* map_objpath )(cace_ari_objpath_t *out, const cace_ari_objpath_t *in, const cace_ari_translate_ctx_t *ctx)
 This is used only when map_ari returns CACE_ARI_TRANSLATE_DEFAULT.
 
int(* map_lit )(cace_ari_lit_t *out, const cace_ari_lit_t *in, const cace_ari_translate_ctx_t *ctx)
 This is used only when map_ari returns CACE_ARI_TRANSLATE_DEFAULT.
 

Detailed Description

Function pointers to implement the cace_ari_translate() behavior.

For any input value, the map_ari is first called (with fallback behavior) followed by either map_objpath or map_lit depending on the ARI type.

Field Documentation

◆ map_ari

cace_ari_translate_result_t(* cace_ari_translator_t::map_ari) (cace_ari_t *out, const cace_ari_t *in, const cace_ari_translate_ctx_t *ctx)

Called when translating each ARI.

If not provided, the CACE_ARI_TRANSLATE_DEFAULT result is assumed, which will copy the literal / reference structure and recurse into contained values or given parameters respectively.

Precondition
The out value is already initialized.
Parameters
[out]outThe produced value.
[in]inThe value being mapped.
[in]ctxVisitor context information.
Returns
Zero to continue iterating, or non-zero to stop immediately.

Referenced by cace_ari_translate_ari(), refda_alarms_compress(), refda_alarms_mgr_state(), and refda_alarms_purge().

◆ map_lit

int(* cace_ari_translator_t::map_lit) (cace_ari_lit_t *out, const cace_ari_lit_t *in, const cace_ari_translate_ctx_t *ctx)

This is used only when map_ari returns CACE_ARI_TRANSLATE_DEFAULT.

If pointer is NULL, the standard cace_ari_lit_copy() will be used.

Precondition
The out value is already initialized.
Parameters
[out]outThe produced value.
[in]inThe value being mapped.
[in]ctxVisitor context information.
Returns
Zero to continue iterating, or non-zero to stop immediately.

Referenced by cace_ari_translate_ari(), and refda_adm_ietf_dtnma_agent_oper_tbl_filter().

◆ map_objpath

int(* cace_ari_translator_t::map_objpath) (cace_ari_objpath_t *out, const cace_ari_objpath_t *in, const cace_ari_translate_ctx_t *ctx)

This is used only when map_ari returns CACE_ARI_TRANSLATE_DEFAULT.

If pointer is NULL, the standard cace_ari_objpath_copy() will be used.

Precondition
The out value is already initialized.
Parameters
[out]outThe produced value.
[in]inThe value being mapped.
[in]ctxVisitor context information.
Returns
Zero to continue iterating, or non-zero to stop immediately.

Referenced by cace_ari_translate_ari().


The documentation for this struct was generated from the following file: