VirtualBox

source: vbox/trunk/src/VBox/GuestHost/OpenGL/include/cr_string.h@ 50874

Last change on this file since 50874 was 48348, checked in by vboxsync, 11 years ago

crOpenGL: int gl version presentation

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.9 KB
Line 
1/* Copyright (c) 2001, Stanford University
2 * All rights reserved.
3 *
4 * See the file LICENSE.txt for information on redistributing this software.
5 */
6
7#ifndef CR_STRING_H
8#define CR_STRING_H
9
10#include <iprt/cdefs.h>
11
12RT_C_DECLS_BEGIN
13
14DECLEXPORT(char *) crStrdup( const char *str );
15DECLEXPORT(char *) crStrndup( const char *str, unsigned int len );
16DECLEXPORT(int) crStrlen( const char *str );
17DECLEXPORT(int) crStrcmp( const char *str1, const char *str2 );
18DECLEXPORT(int) crStrncmp( const char *str1, const char *str2, int n );
19DECLEXPORT(int) crStrcasecmp( const char *str1, const char *str2 );
20DECLEXPORT(void) crStrcpy( char *dst, const char *src );
21DECLEXPORT(void) crStrncpy( char *dst, const char *src, unsigned int len );
22DECLEXPORT(void) crStrcat( char *dst, const char *src );
23DECLEXPORT(char *) crStrjoin( const char *src1, const char *src2 );
24DECLEXPORT(char *) crStrjoin3( const char *src1, const char *src2, const char *src3 );
25DECLEXPORT(char *) crStrstr( const char *str, const char *pat );
26DECLEXPORT(char *) crStrchr( const char *str, char c );
27DECLEXPORT(char *) crStrrchr( const char *str, char c );
28DECLEXPORT(int) crStrToInt( const char *str );
29DECLEXPORT(float) crStrToFloat( const char *str );
30DECLEXPORT(char **) crStrSplit( const char *str, const char *splitstr );
31DECLEXPORT(char **) crStrSplitn( const char *str, const char *splitstr, int n );
32DECLEXPORT(void) crFreeStrings( char **strings );
33DECLEXPORT(char *) crStrIntersect( const char *s1, const char *s2 );
34DECLEXPORT(int) crIsDigit( char c );
35
36DECLEXPORT(void) crBytesToString( char *string, int nstring, void *data, int ndata );
37DECLEXPORT(void) crWordsToString( char *string, int nstring, void *data, int ndata );
38
39#define CR_GLVERSION_OFFSET_MAJOR (24)
40#define CR_GLVERSION_OFFSET_MINOR (16)
41#define CR_GLVERSION_OFFSET_BUILD (0)
42
43#define CR_GLVERSION_MAX_MAJOR (0x7f)
44#define CR_GLVERSION_MAX_MINOR (0xff)
45#define CR_GLVERSION_MAX_BUILD (0xffff)
46
47#define CR_GLVERSION_MASK_MAJOR (CR_GLVERSION_MAX_MAJOR << CR_GLVERSION_OFFSET_MAJOR)
48#define CR_GLVERSION_MASK_MINOR (CR_GLVERSION_MAX_MINOR << CR_GLVERSION_OFFSET_MINOR)
49#define CR_GLVERSION_MASK_BUILD (CR_GLVERSION_MAX_BUILD << CR_GLVERSION_OFFSET_BUILD)
50
51#define CR_GLVERSION_COMPOSE_EL(_val, _type) (((_val) << CR_GLVERSION_OFFSET_##_type) & CR_GLVERSION_MASK_##_type)
52
53#define CR_GLVERSION_COMPOSE(_maj, _min, _build) (CR_GLVERSION_COMPOSE_EL((_maj), MAJOR) \
54 + CR_GLVERSION_COMPOSE_EL((_min), MINOR) \
55 + CR_GLVERSION_COMPOSE_EL((_build), BUILD))
56
57#define CR_GLVERSION_GET_EL(_val, _type) (((_val) & CR_GLVERSION_MASK_##_type) >> CR_GLVERSION_OFFSET_##_type)
58#define CR_GLVERSION_GET_MAJOR(_val) CR_GLVERSION_GET_EL((_val), MAJOR)
59#define CR_GLVERSION_GET_MINOR(_val) CR_GLVERSION_GET_EL((_val), MINOR)
60#define CR_GLVERSION_GET_BUILD(_val) CR_GLVERSION_GET_EL((_val), BUILD)
61
62DECLEXPORT(int) crStrParseGlVersion(const char * ver);
63RT_C_DECLS_END
64
65#endif /* CR_STRING_H */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette