]> git.sur5r.net Git - freertos/blob - FreeRTOS-Labs/Demo/FreeRTOS_Plus_POSIX_with_actor_Windows_Simulator/lib/include/FreeRTOS_POSIX/signal.h
Add the Labs projects provided in the V10.2.1_191129 zip file.
[freertos] / FreeRTOS-Labs / Demo / FreeRTOS_Plus_POSIX_with_actor_Windows_Simulator / lib / include / FreeRTOS_POSIX / signal.h
1 /*\r
2  * Amazon FreeRTOS POSIX V1.1.0\r
3  * Copyright (C) 2019 Amazon.com, Inc. or its affiliates.  All Rights Reserved.\r
4  *\r
5  * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
6  * this software and associated documentation files (the "Software"), to deal in\r
7  * the Software without restriction, including without limitation the rights to\r
8  * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\r
9  * the Software, and to permit persons to whom the Software is furnished to do so,\r
10  * subject to the following conditions:\r
11  *\r
12  * The above copyright notice and this permission notice shall be included in all\r
13  * copies or substantial portions of the Software.\r
14  *\r
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\r
17  * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\r
18  * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\r
19  * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
20  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
21  *\r
22  * http://aws.amazon.com/freertos\r
23  * http://www.FreeRTOS.org\r
24  */\r
25 \r
26 /**\r
27  * @file signal.h\r
28  * @brief Signals.\r
29  *\r
30  * Signals are currently not implemented in FreeRTOS+POSIX. This header only\r
31  * defines the signal data structures used elsewhere.\r
32  *\r
33  * http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html\r
34  */\r
35 \r
36 \r
37 #ifndef _FREERTOS_POSIX_SIGNAL_H_\r
38 #define _FREERTOS_POSIX_SIGNAL_H_\r
39 \r
40 /**\r
41  * @name Values of sigev_notify.\r
42  */\r
43 /**@{ */\r
44 #define SIGEV_NONE      0 /**< No asynchronous notification is delivered when the event of interest occurs. */\r
45 #define SIGEV_SIGNAL    1 /**< A queued signal, with an application-defined value, is generated when the event of interest occurs. Not supported. */\r
46 #define SIGEV_THREAD    2 /**< A notification function is called to perform notification. */\r
47 /**@} */\r
48 \r
49 /**\r
50  * @brief Signal value.\r
51  */\r
52 union sigval\r
53 {\r
54     int sival_int;    /**< Integer signal value. */\r
55     void * sival_ptr; /**< Pointer signal value. */\r
56 };\r
57 \r
58 /**\r
59  * @brief Signal event structure.\r
60  */\r
61 struct sigevent\r
62 {\r
63     int sigev_notify;                                 /**< Notification type. A value of SIGEV_SIGNAL is not supported. */\r
64     int sigev_signo;                                  /**< Signal number. This member is ignored. */\r
65     union sigval sigev_value;                         /**< Signal value. Only the sival_ptr member is used. */\r
66     void ( * sigev_notify_function )( union sigval ); /**< Notification function. */\r
67     pthread_attr_t * sigev_notify_attributes;         /**< Notification attributes. */\r
68 };\r
69 \r
70 #endif /* ifndef _FREERTOS_POSIX_SIGNAL_H_ */\r