inc/umock_c/umock_lock_if.h (24 lines of code) (raw):
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
#ifndef UMOCK_LOCK_IF_H
#define UMOCK_LOCK_IF_H
#include "macro_utils/macro_utils.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef const struct UMOCK_C_LOCK_IF_TAG* UMOCK_C_LOCK_HANDLE;
typedef void (*UMOCK_C_LOCK_ACQUIRE_SHARED_FUNC)(UMOCK_C_LOCK_HANDLE lock);
typedef void (*UMOCK_C_LOCK_RELEASE_SHARED_FUNC)(UMOCK_C_LOCK_HANDLE lock);
typedef void (*UMOCK_C_LOCK_ACQUIRE_EXCLUSIVE_FUNC)(UMOCK_C_LOCK_HANDLE lock);
typedef void (*UMOCK_C_LOCK_RELEASE_EXCLUSIVE_FUNC)(UMOCK_C_LOCK_HANDLE lock);
typedef void (*UMOCK_C_LOCK_DESTROY_FUNC)(UMOCK_C_LOCK_HANDLE lock);
typedef struct UMOCK_C_LOCK_IF_TAG
{
UMOCK_C_LOCK_ACQUIRE_SHARED_FUNC acquire_shared;
UMOCK_C_LOCK_RELEASE_SHARED_FUNC release_shared;
UMOCK_C_LOCK_ACQUIRE_EXCLUSIVE_FUNC acquire_exclusive;
UMOCK_C_LOCK_RELEASE_EXCLUSIVE_FUNC release_exclusive;
UMOCK_C_LOCK_DESTROY_FUNC destroy;
} UMOCK_C_LOCK_IF;
#ifdef __cplusplus
}
#endif
#endif /* UMOCK_LOCK_IF_H */