Difference between pages "r7.1.1:Macro LFDS711 QUEUE UMM GET KEY FROM ELEMENT" and "r7.1.1:Macro LFDS711 QUEUE UMM GET USER STATE FROM STATE"
(Difference between pages)
Jump to navigation
Jump to search
m (1 revision imported) |
m (1 revision imported) |
||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:macro | {{DISPLAYTITLE:macro LFDS711_QUEUE_UMM_GET_USER_STATE_FROM_STATE}} | ||
==Source | ==Source File== | ||
└───liblfds711 | └───liblfds711 | ||
└───inc | └───inc | ||
└───liblfds711 | └───liblfds711 | ||
lfds711_queue_umm.h | lfds711_queue_umm.h | ||
==Macro== | ==Macro== | ||
#define | #define LFDS711_QUEUE_UMM_GET_USER_STATE_FROM_STATE( queue_umm_state ) | ||
==Parameters== | ==Parameters== | ||
'' | ''queue_umm_state'' | ||
: | : An initialized ''struct lfds711_queue_umm_state''. Not a pointer to it - the struct itself. | ||
==Return Value== | ==Return Value== | ||
Returns a void | Returns a ''void *'', the ''user_state'' argument from ''[[r7.1.1:function lfds711_queue_umm_init_valid_on_current_logical_core|lfds711_umm_queue_init_valid_on_current_logical_core]]''. | ||
==Notes== | ==Notes== | ||
The | The user state value can only be set the once, when the data structure instance is initialized. | ||
As with all ''liblfds'' macros, the macro operates on the structure itself, not a pointer to it. | As with all ''liblfds'' macros, the macro operates on the structure itself, not a pointer to it. | ||
==Example== | ==Example== | ||
#include <stdio.h> | |||
#include <string.h> | |||
#include "liblfds711.h" | |||
int main() | |||
{ | |||
char | |||
queue_name[64] = "People Ain't No Good"; | |||
struct lfds711_queue_umm_element | |||
qumme_dummy; | |||
struct lfds711_queue_umm_state | |||
qumms; | |||
void | |||
*user_state; | |||
lfds711_queue_umm_init_valid_on_current_logical_core( &qumms, &qumme_dummy, (void *) queue_name ); | |||
user_state = LFDS711_QUEUE_GET_USER_STATE_FROM_STATE( qumms ); | |||
printf( "queue name is \"%s\"\n", (char *) user_state ); | |||
lfds711_queue_umm_cleanup( &qumms, NULL ); | |||
return( EXIT_SUCCESS ); | |||
} | |||
==See Also== | ==See Also== | ||
* [[r7.1.1:Queue (unbounded, many producer, many consumer)|Queue (unbounded, many producer, many consumer)]] | * [[r7.1.1:Queue (unbounded, many producer, many consumer)|Queue (unbounded, many producer, many consumer)]] | ||
Latest revision as of 18:12, 16 February 2017
Source File
└───liblfds711 └───inc └───liblfds711 lfds711_queue_umm.h
Macro
#define LFDS711_QUEUE_UMM_GET_USER_STATE_FROM_STATE( queue_umm_state )
Parameters
queue_umm_state
- An initialized struct lfds711_queue_umm_state. Not a pointer to it - the struct itself.
Return Value
Returns a void *, the user_state argument from lfds711_umm_queue_init_valid_on_current_logical_core.
Notes
The user state value can only be set the once, when the data structure instance is initialized.
As with all liblfds macros, the macro operates on the structure itself, not a pointer to it.
Example
#include <stdio.h> #include <string.h> #include "liblfds711.h" int main() { char queue_name[64] = "People Ain't No Good"; struct lfds711_queue_umm_element qumme_dummy; struct lfds711_queue_umm_state qumms; void *user_state; lfds711_queue_umm_init_valid_on_current_logical_core( &qumms, &qumme_dummy, (void *) queue_name ); user_state = LFDS711_QUEUE_GET_USER_STATE_FROM_STATE( qumms ); printf( "queue name is \"%s\"\n", (char *) user_state ); lfds711_queue_umm_cleanup( &qumms, NULL ); return( EXIT_SUCCESS ); }