S2OPC OPCUA Toolkit
p_sopc_threads.h
Go to the documentation of this file.
1 /*
2  * Licensed to Systerel under one or more contributor license
3  * agreements. See the NOTICE file distributed with this work
4  * for additional information regarding copyright ownership.
5  * Systerel licenses this file to you under the Apache
6  * License, Version 2.0 (the "License"); you may not use this
7  * file except in compliance with the License. You may obtain
8  * a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15  * KIND, either express or implied. See the License for the
16  * specific language governing permissions and limitations
17  * under the License.
18  */
19 
25 #ifndef SOPC_PIKEOS_P_THREADS_H_
26 #define SOPC_PIKEOS_P_THREADS_H_
27 
28 #include <p4.h>
29 #include <p4ext_threads.h>
30 
31 #include "sopc_enums.h"
32 
33 typedef void* pFct(void*);
34 
35 struct SOPC_Thread_Impl
36 {
37  P4_thr_t thread; /* Pikeos Thread number */
38  pFct* pStartFct; /* External user callback */
39  void* pStartArgs; /* External user parameter */
40  P4_barrier_t joinSignal; /* Barrier to announce that thread is finished used by join */
41 };
42 
43 #endif // SOPC_PIKEOS_P_THREADS_H_
pFct
void * pFct(void *)
Implementation of SOPC threads in scope of native PIKEOS personnality.
Definition: p_sopc_threads.h:33
SOPC_Thread_Impl::pStartFct
pFct * pStartFct
Definition: p_sopc_threads.h:38
SOPC_Thread_Impl::pStartArgs
void * pStartArgs
Definition: p_sopc_threads.h:39
SOPC_Thread_Impl
Definition: p_sopc_threads.h:42
sopc_enums.h
SOPC_Thread_Impl::thread
P4_thr_t thread
Definition: p_sopc_threads.h:37
SOPC_Thread_Impl::joinSignal
P4_barrier_t joinSignal
Definition: p_sopc_threads.h:40