summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/angle/src/compiler/translator/FlagStd140Structs.h
blob: f548d8b6ed124c7573c6336eceefe60a5d11f28a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//
// Copyright (c) 2013 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// FlagStd140Structs.h: Find structs in std140 blocks, where the padding added in the translator
// conflicts with the "natural" unpadded type.

#ifndef COMPILER_TRANSLATOR_FLAGSTD140STRUCTS_H_
#define COMPILER_TRANSLATOR_FLAGSTD140STRUCTS_H_

#include <vector>

namespace sh
{

class TField;
class TIntermNode;
class TIntermSymbol;

struct MappedStruct
{
    TIntermSymbol *blockDeclarator;
    TField *field;
};

std::vector<MappedStruct> FlagStd140Structs(TIntermNode *node);
}

#endif  // COMPILER_TRANSLATOR_FLAGSTD140STRUCTS_H_