Harlequin RIP SDK
sw_rdr_iterator Struct Reference

Our private iterator structure. More...

#include "rdrpriv.h"

Data Fields

int32 magic
 
int32 flags
 
sw_rdr_class Class
 
sw_rdr_type Type
 
sw_rdr_id Id
 
sw_rdr_priority Priority
 
sw_rdrrdr
 
sw_rdrparent
 
sw_rdrlocked
 
rdr_lookup_tlookup
 
struct sw_rdr_iteratornext
 

Detailed Description

Our private iterator structure.

We manage these internally, to cope with (de)registrations mid-iteration.

These are opaque to Consumers, and are not used by Providers.

Note that when multithreading, all accesses of any of these values MUST be performed under mutex, as the contents can be changed by other threads.

Field Documentation

◆ Class

sw_rdr_class sw_rdr_iterator::Class

if flags.b0

◆ flags

int32 sw_rdr_iterator::flags

Which values to check

◆ Id

sw_rdr_id sw_rdr_iterator::Id

if flags.b2

◆ locked

sw_rdr* sw_rdr_iterator::locked

current RDR if locked

◆ lookup

rdr_lookup_t* sw_rdr_iterator::lookup

Head of the lookup RDR list.

◆ magic

int32 sw_rdr_iterator::magic

Magic value to check iterator

◆ next

struct sw_rdr_iterator* sw_rdr_iterator::next

list of current iterators

◆ parent

sw_rdr* sw_rdr_iterator::parent

parent of returned RDR

◆ Priority

sw_rdr_priority sw_rdr_iterator::Priority

if flags.b3

◆ rdr

sw_rdr* sw_rdr_iterator::rdr

next RDR to check

◆ Type

sw_rdr_type sw_rdr_iterator::Type

if flags.b1


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