135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca/**************************************************************************
235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca *
335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas.
435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * All Rights Reserved.
535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca *
635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * Permission is hereby granted, free of charge, to any person obtaining a
735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * copy of this software and associated documentation files (the
835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * "Software"), to deal in the Software without restriction, including
935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * without limitation the rights to use, copy, modify, merge, publish,
1035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * distribute, sub license, and/or sell copies of the Software, and to
1135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * permit persons to whom the Software is furnished to do so, subject to
1235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * the following conditions:
1335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca *
1435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * The above copyright notice and this permission notice (including the
1535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * next paragraph) shall be included in all copies or substantial portions
1635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * of the Software.
1735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca *
1835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
1935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
2035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
2135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR
2235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
2335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
2435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca *
2635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca **************************************************************************/
2735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
2835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca#ifndef TR_CONTEXT_H_
2935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca#define TR_CONTEXT_H_
3035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
3135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
3235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca#include "pipe/p_compiler.h"
33ea4bf267e4b023b08043f91ac44592fed1736e7fJosé Fonseca#include "util/u_debug.h"
3435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca#include "pipe/p_context.h"
3535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
363b4da4e9dac00f181380a9896ef3329964432c43Jakob Bornecrantz#include "tr_screen.h"
3735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
38200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonseca#ifdef __cplusplus
39200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonsecaextern "C" {
40200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonseca#endif
41200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonseca
42422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz
437f41f5447c8f9113c8956901e1c5fff6081ecd94Keith Whitwellstruct trace_screen;
447f41f5447c8f9113c8956901e1c5fff6081ecd94Keith Whitwell
4535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonsecastruct trace_context
4635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca{
4735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca   struct pipe_context base;
48422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz
49f2e19c34e06dfc33557a481f764fc75a5aef15ffJosé Fonseca   struct pipe_context *pipe;
5035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca};
5135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
5235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
5335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonsecastatic INLINE struct trace_context *
54f2e19c34e06dfc33557a481f764fc75a5aef15ffJosé Fonsecatrace_context(struct pipe_context *pipe)
5535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca{
56f2e19c34e06dfc33557a481f764fc75a5aef15ffJosé Fonseca   assert(pipe);
57f2e19c34e06dfc33557a481f764fc75a5aef15ffJosé Fonseca   return (struct trace_context *)pipe;
5835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca}
5935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
6035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
6135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonsecastruct pipe_context *
627f41f5447c8f9113c8956901e1c5fff6081ecd94Keith Whitwelltrace_context_create(struct trace_screen *tr_scr,
633c90678ea69ee8be832e16d42a1b8049a49535e3José Fonseca                     struct pipe_context *pipe);
6435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
6535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca
66200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonseca#ifdef __cplusplus
67200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonseca}
68200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonseca#endif
69200d6dcc83ea9ac0bf6f1506214e0bd9b65714f2José Fonseca
7035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca#endif /* TR_CONTEXT_H_ */
71