MIDAS
Loading...
Searching...
No Matches
BUFFER Struct Reference

#include <midas.h>

Collaboration diagram for BUFFER:

Public Attributes

std::atomic_bool attached {false}
 
std::timed_mutex buffer_mutex
 
INT client_index = 0
 
char client_name [NAME_LENGTH]
 
char buffer_name [NAME_LENGTH]
 
BUFFER_HEADERbuffer_header = NULL
 
std::timed_mutex read_cache_mutex
 
std::atomic< size_tread_cache_size {0}
 
charread_cache = NULL
 
size_t read_cache_rp = 0
 
size_t read_cache_wp = 0
 
std::timed_mutex write_cache_mutex
 
std::atomic< size_twrite_cache_size {0}
 
charwrite_cache = NULL
 
size_t write_cache_rp = 0
 
size_t write_cache_wp = 0
 
HNDLE semaphore = 0
 
INT shm_handle = 0
 
size_t shm_size = 0
 
BOOL callback = false
 
BOOL locked = false
 
BOOL get_all_flag = false
 
int count_lock = 0
 
int count_sent = 0
 
double bytes_sent = 0
 
int count_write_wait = 0
 
DWORD time_write_wait = 0
 
int last_count_lock = 0
 
DWORD wait_start_time = 0
 
int wait_client_index = 0
 
int max_requested_space = 0
 
int count_read = 0
 
double bytes_read = 0
 
int client_count_write_wait [MAX_CLIENTS]
 
DWORD client_time_write_wait [MAX_CLIENTS]
 

Detailed Description

Definition at line 985 of file midas.h.

Member Data Documentation

◆ attached

std::atomic_bool BUFFER::attached {false}

TRUE if buffer is attached

Definition at line 987 of file midas.h.

987{false};

◆ buffer_header

BUFFER_HEADER* BUFFER::buffer_header = NULL

pointer to buffer header

Definition at line 992 of file midas.h.

◆ buffer_mutex

std::timed_mutex BUFFER::buffer_mutex

buffer mutex

Definition at line 988 of file midas.h.

◆ buffer_name

char BUFFER::buffer_name[NAME_LENGTH]

name of buffer

Definition at line 991 of file midas.h.

◆ bytes_read

double BUFFER::bytes_read = 0

count how many bytes we read

Definition at line 1021 of file midas.h.

◆ bytes_sent

double BUFFER::bytes_sent = 0

count how many bytes we sent

Definition at line 1013 of file midas.h.

◆ callback

BOOL BUFFER::callback = false

callback defined for this buffer

Definition at line 1006 of file midas.h.

◆ client_count_write_wait

int BUFFER::client_count_write_wait[MAX_CLIENTS]

per-client count_write_wait

Definition at line 1022 of file midas.h.

◆ client_index

INT BUFFER::client_index = 0

index to CLIENT str. in buf.

Definition at line 989 of file midas.h.

◆ client_name

char BUFFER::client_name[NAME_LENGTH]

name of client

Definition at line 990 of file midas.h.

◆ client_time_write_wait

DWORD BUFFER::client_time_write_wait[MAX_CLIENTS]

per-client time_write_wait

Definition at line 1023 of file midas.h.

◆ count_lock

int BUFFER::count_lock = 0

count how many times we locked the buffer

Definition at line 1011 of file midas.h.

◆ count_read

int BUFFER::count_read = 0

count how many events we read

Definition at line 1020 of file midas.h.

◆ count_sent

int BUFFER::count_sent = 0

count how many events we sent

Definition at line 1012 of file midas.h.

◆ count_write_wait

int BUFFER::count_write_wait = 0

count how many times we waited for free space

Definition at line 1014 of file midas.h.

◆ get_all_flag

BOOL BUFFER::get_all_flag = false

this is a get_all reader

Definition at line 1008 of file midas.h.

◆ last_count_lock

int BUFFER::last_count_lock = 0

avoid writing statistics to odb if lock count did not change

Definition at line 1016 of file midas.h.

◆ locked

BOOL BUFFER::locked = false

buffer is currently locked by us

Definition at line 1007 of file midas.h.

◆ max_requested_space

int BUFFER::max_requested_space = 0

waiting for this many bytes of free space

Definition at line 1019 of file midas.h.

◆ read_cache

char* BUFFER::read_cache = NULL

cache for burst read

Definition at line 995 of file midas.h.

◆ read_cache_mutex

std::timed_mutex BUFFER::read_cache_mutex

cache read mutex

Definition at line 993 of file midas.h.

◆ read_cache_rp

size_t BUFFER::read_cache_rp = 0

cache read pointer

Definition at line 996 of file midas.h.

◆ read_cache_size

std::atomic<size_t> BUFFER::read_cache_size {0}

cache size in bytes

Definition at line 994 of file midas.h.

994{0};

◆ read_cache_wp

size_t BUFFER::read_cache_wp = 0

cache write pointer

Definition at line 997 of file midas.h.

◆ semaphore

HNDLE BUFFER::semaphore = 0

semaphore handle

Definition at line 1003 of file midas.h.

◆ shm_handle

INT BUFFER::shm_handle = 0

handle to shared memory

Definition at line 1004 of file midas.h.

◆ shm_size

size_t BUFFER::shm_size = 0

size of shared memory

Definition at line 1005 of file midas.h.

◆ time_write_wait

DWORD BUFFER::time_write_wait = 0

count for how long we waited for free space, in units of ss_millitime()

Definition at line 1015 of file midas.h.

◆ wait_client_index

int BUFFER::wait_client_index = 0

waiting for which client

Definition at line 1018 of file midas.h.

◆ wait_start_time

DWORD BUFFER::wait_start_time = 0

time when we started the wait

Definition at line 1017 of file midas.h.

◆ write_cache

char* BUFFER::write_cache = NULL

cache for burst read

Definition at line 1000 of file midas.h.

◆ write_cache_mutex

std::timed_mutex BUFFER::write_cache_mutex

cache write mutex

Definition at line 998 of file midas.h.

◆ write_cache_rp

size_t BUFFER::write_cache_rp = 0

cache read pointer

Definition at line 1001 of file midas.h.

◆ write_cache_size

std::atomic<size_t> BUFFER::write_cache_size {0}

cache size in bytes

Definition at line 999 of file midas.h.

999{0};

◆ write_cache_wp

size_t BUFFER::write_cache_wp = 0

cache write pointer

Definition at line 1002 of file midas.h.


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