1/*
2 * Copyright 2011, Oliver Tappe, zooey@hirschkaefer.de.
3 * Distributed under the terms of the MIT License.
4 */
5#ifndef _ICU_THREAD_LOCAL_STORAGE_VALUE_H
6#define _ICU_THREAD_LOCAL_STORAGE_VALUE_H
7
8
9#include <pthread.h>
10
11#include <unicode/ucnv.h>
12
13#include <SupportDefs.h>
14
15
16namespace BPrivate {
17namespace Libroot {
18
19
20struct ICUThreadLocalStorageValue {
21			UConverter*			converter;
22			char				charset[64];
23
24								ICUThreadLocalStorageValue();
25								~ICUThreadLocalStorageValue();
26
27	static	status_t			GetInstanceForKey(pthread_key_t tlsKey,
28									ICUThreadLocalStorageValue*& instanceOut);
29};
30
31
32}	// namespace Libroot
33}	// namespace BPrivate
34
35
36#endif	// _ICU_THREAD_LOCAL_STORAGE_VALUE_H
37