Blame gl/tests/windows-tls.h

Packit Service 991b93
/* Thread-local storage (native Windows implementation).
Packit Service 991b93
   Copyright (C) 2005-2020 Free Software Foundation, Inc.
Packit Service 991b93
Packit Service 991b93
   This program is free software: you can redistribute it and/or modify
Packit Service 991b93
   it under the terms of the GNU General Public License as published by
Packit Service 991b93
   the Free Software Foundation; either version 3 of the License, or
Packit Service 991b93
   (at your option) any later version.
Packit Service 991b93
Packit Service 991b93
   This program is distributed in the hope that it will be useful,
Packit Service 991b93
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 991b93
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit Service 991b93
   GNU General Public License for more details.
Packit Service 991b93
Packit Service 991b93
   You should have received a copy of the GNU General Public License
Packit Service 991b93
   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
Packit Service 991b93
Packit Service 991b93
/* Written by Bruno Haible <bruno@clisp.org>, 2005.  */
Packit Service 991b93
Packit Service 991b93
#ifndef _WINDOWS_TLS_H
Packit Service 991b93
#define _WINDOWS_TLS_H
Packit Service 991b93
Packit Service 991b93
#define WIN32_LEAN_AND_MEAN  /* avoid including junk */
Packit Service 991b93
#include <windows.h>
Packit Service 991b93
Packit Service 991b93
typedef DWORD glwthread_tls_key_t;
Packit Service 991b93
Packit Service 991b93
#ifdef __cplusplus
Packit Service 991b93
extern "C" {
Packit Service 991b93
#endif
Packit Service 991b93
Packit Service 991b93
extern int glwthread_tls_key_create (glwthread_tls_key_t *keyp, void (*destructor) (void *));
Packit Service 991b93
extern void *glwthread_tls_get (glwthread_tls_key_t key);
Packit Service 991b93
extern int glwthread_tls_set (glwthread_tls_key_t key, void *value);
Packit Service 991b93
extern int glwthread_tls_key_delete (glwthread_tls_key_t key);
Packit Service 991b93
extern void glwthread_tls_process_destructors (void);
Packit Service 991b93
#define GLWTHREAD_DESTRUCTOR_ITERATIONS 4
Packit Service 991b93
Packit Service 991b93
#ifdef __cplusplus
Packit Service 991b93
}
Packit Service 991b93
#endif
Packit Service 991b93
Packit Service 991b93
#endif /* _WINDOWS_TLS_H */