13c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#ifndef _TCUVECTORTYPE_HPP
23c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#define _TCUVECTORTYPE_HPP
33c827367444ee418f129b2c238299f49d3264554Jarkko Poyry/*-------------------------------------------------------------------------
43c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * drawElements Quality Program Tester Core
53c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * ----------------------------------------
63c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
73c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Copyright 2014 The Android Open Source Project
83c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
93c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Licensed under the Apache License, Version 2.0 (the "License");
103c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * you may not use this file except in compliance with the License.
113c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * You may obtain a copy of the License at
123c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
133c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *      http://www.apache.org/licenses/LICENSE-2.0
143c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
153c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Unless required by applicable law or agreed to in writing, software
163c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * distributed under the License is distributed on an "AS IS" BASIS,
173c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
183c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * See the License for the specific language governing permissions and
193c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * limitations under the License.
203c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
213c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *//*!
223c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * \file
233c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * \brief Vector type forward declarations.
243c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *
253c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * This header should be included instead of tcuVector.h if only vector
263c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * type name is required. Especially headers should avoid including full
273c827367444ee418f129b2c238299f49d3264554Jarkko Poyry * Vector<T> implementation.
283c827367444ee418f129b2c238299f49d3264554Jarkko Poyry *//*--------------------------------------------------------------------*/
293c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
303c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#include "tcuDefs.hpp"
313c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
323c827367444ee418f129b2c238299f49d3264554Jarkko Poyrynamespace tcu
333c827367444ee418f129b2c238299f49d3264554Jarkko Poyry{
343c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
353c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytemplate <typename T, int Size>
363c827367444ee418f129b2c238299f49d3264554Jarkko Poyryclass Vector;
373c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
3865d04b9f591c99e654edfb1125f4b4b00f355c3aJarkko Pöyrytypedef Vector<float, 1>	Vec1;
393c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<float, 2>	Vec2;
403c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<float, 3>	Vec3;
413c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<float, 4>	Vec4;
423c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
4365d04b9f591c99e654edfb1125f4b4b00f355c3aJarkko Pöyrytypedef Vector<int, 1>		IVec1;
443c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<int, 2>		IVec2;
453c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<int, 3>		IVec3;
463c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<int, 4>		IVec4;
473c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
4865d04b9f591c99e654edfb1125f4b4b00f355c3aJarkko Pöyrytypedef Vector<deUint32, 1>	UVec1;
493c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<deUint32, 2>	UVec2;
503c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<deUint32, 3>	UVec3;
513c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<deUint32, 4>	UVec4;
523c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
5365d04b9f591c99e654edfb1125f4b4b00f355c3aJarkko Pöyrytypedef Vector<bool, 1>		BVec1;
543c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<bool, 2>		BVec2;
553c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<bool, 3>		BVec3;
563c827367444ee418f129b2c238299f49d3264554Jarkko Poyrytypedef Vector<bool, 4>		BVec4;
573c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
583c827367444ee418f129b2c238299f49d3264554Jarkko Poyry} // tcu
593c827367444ee418f129b2c238299f49d3264554Jarkko Poyry
603c827367444ee418f129b2c238299f49d3264554Jarkko Poyry#endif // _TCUVECTORTYPE_HPP
61