UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
Loading...
Searching...
No Matches
module Struct Reference

#include <module.h>

Collaboration diagram for module:
Collaboration graph

Public Member Functions

 module ()=default
 
 module (module &&)=delete
 
 module (module const &)=delete
 

Public Attributes

struct simple_linked_list * children
 
enum module_class cls
 
module_deleter_t deleter
 
pthread_mutex_t lock
 
uint32_t magic
 
struct simple_linked_list * msg_queue
 
struct simple_linked_list * msg_queue_children
 messages for childern that were not delivered
 
pthread_mutex_t msg_queue_lock
 
char * name
 
notify_t new_message
 if set, notifies module that new message is in queue, receiver lock is hold during the call
 
struct module * parent
 
void * priv_data
 
uint32_t priv_magic
 optional magic number that can a module set
 

Detailed Description

Only members cls, deleter, priv_data and msg_queue may be directly touched by user. The others should be considered private.

Definition at line 111 of file module.h.

Constructor & Destructor Documentation

◆ module() [1/3]

module::module ( )
default

◆ module() [2/3]

module::module ( module const & )
delete

◆ module() [3/3]

module::module ( module && )
delete

Member Data Documentation

◆ children

struct simple_linked_list* module::children

Definition at line 117 of file module.h.

Referenced by dump_tree(), find_child(), module_done(), module_init_default(), and module_register().

◆ cls

◆ deleter

module_deleter_t module::deleter

Definition at line 118 of file module.h.

Referenced by cineform_compress_init(), init_root_module(), module_done(), and tx_init().

◆ lock

◆ magic

uint32_t module::magic

Definition at line 112 of file module.h.

Referenced by module_done(), and module_init_default().

◆ msg_queue

◆ msg_queue_children

struct simple_linked_list* module::msg_queue_children

messages for childern that were not delivered

Definition at line 124 of file module.h.

Referenced by module_check_undelivered_messages(), module_done(), module_init_default(), and send_message_common().

◆ msg_queue_lock

pthread_mutex_t module::msg_queue_lock

◆ name

char* module::name

optional name of the module. May be used for indexing. Will be freed by module_done(). Must not start with a digit.

Definition at line 129 of file module.h.

Referenced by replica::replica(), find_child(), and module_done().

◆ new_message

notify_t module::new_message

if set, notifies module that new message is in queue, receiver lock is hold during the call

Definition at line 119 of file module.h.

Referenced by state_video_decoder::state_video_decoder(), audio_decoder_init(), control_init(), display_sdl2_init(), export_init(), init_root_module(), initialize_import(), send_message_common(), send_message_to_receiver(), and vidcap_file_init().

◆ parent

struct module* module::parent

◆ priv_data

◆ priv_magic

uint32_t module::priv_magic

optional magic number that can a module set

Definition at line 113 of file module.h.

Referenced by display_sdl2_done(), display_sdl2_getf(), display_sdl2_init(), display_sdl2_putf(), vidcap_file_done(), vidcap_file_grab(), and vidcap_file_init().


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