logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Author

       Generated automatically by Doxygen for DPDK from the source code.

DPDK                                             Version 24.11.2                                  rte_class.h(3)

Detailed Description

       DPDK device class interface.

       This file describes the interface of the device class abstraction layer.

       A device class defines the type of function a device will be used for e.g.: Ethernet adapter (eth),
       cryptographic co-processor (crypto), etc.

       Definition in file rte_class.h.

Function Documentation

RTE_TAILQ_HEAD(rte_class_list,rte_class)
       Double linked list of classes

   structrte_class*rte_class_find(conststructrte_class*start,rte_class_cmp_tcmp,constvoid*data)
       Class iterator to find a particular class.

       This function compares each registered class to find one that matches the data passed as parameter.

       If the comparison function returns zero this function will stop iterating over any more classes. To
       continue a search the class of a previous search can be passed via the start parameter.

       Parametersstart Starting point for the iteration.
           cmp Comparison function.
           data Data to pass to comparison function.

       Returns
           A pointer to a rte_class structure or NULL in case no class matches

   structrte_class*rte_class_find_by_name(constchar*name)
       Find the registered class for a given name.

   voidrte_class_register(structrte_class*cls)
       Register a Class handle.

       Parameterscls A pointer to a rte_class structure describing the class to be registered.

   voidrte_class_unregister(structrte_class*cls)
       Unregister a Class handle.

       Parameterscls A pointer to a rte_class structure describing the class to be unregistered.

Macro Definition Documentation

#defineRTE_REGISTER_CLASS(nm,cls)Value:.PP
       RTE_INIT_PRIO(classinitfn_ ##nm, CLASS) \
       {\
           (cls).name = RTE_STR(nm); \
           rte_class_register(&cls); \
       }
       Helper for Class registration. The constructor has lower priority than Bus constructors. The constructor
       has higher priority than PMD constructors.

       Definition at line 111 of file rte_class.h.

Name

       rte_class.h

Synopsis

       #include <rte_dev.h>

   DataStructures
       struct rte_classMacros
       #define RTE_REGISTER_CLASS(nm,  cls)

   Typedefstypedef int(* rte_class_cmp_t) (const struct rte_class *cls, const void *data)

   FunctionsRTE_TAILQ_HEAD (rte_class_list, rte_class)
       struct rte_class * rte_class_find (const struct rte_class *start, rte_class_cmp_t cmp, const void *data)
       struct rte_class * rte_class_find_by_name (const char *name)
       void rte_class_register (struct rte_class *cls)
       void rte_class_unregister (struct rte_class *cls)

Typedef Documentation

typedefint(*rte_class_cmp_t)(conststructrte_class*cls,constvoid*data)
       Class comparison function.

       Parameterscls Class under test.
           data Data to compare against.

       Returns
           0 if the class matches the data. !0 if the class does not match. <0 if ordering is possible and the
           class is lower than the data. >0 if ordering is possible and the class is greater than the data.

       Definition at line 54 of file rte_class.h.

See Also