blob: c92764c90f85e3df88489454cb0615d0cd7d6ceb [file] [log] [blame]
alokp@chromium.org76b82082010-03-24 17:59:39 +00001//
2// Copyright (c) 2002-2010 The ANGLE Project Authors. All rights reserved.
3// Use of this source code is governed by a BSD-style license that can be
4// found in the LICENSE file.
5//
6
7#include "TranslatorHLSL.h"
8#include "OutputHLSL.h"
9
daniel@transgaming.come78c0c92010-03-28 19:36:06 +000010TranslatorHLSL::TranslatorHLSL(EShLanguage language, int debugOptions)
11 : TCompiler(language), debugOptions(debugOptions)
12{
alokp@chromium.org76b82082010-03-24 17:59:39 +000013}
14
daniel@transgaming.come78c0c92010-03-28 19:36:06 +000015bool TranslatorHLSL::compile(TIntermNode *root)
16{
alokp@chromium.org76b82082010-03-24 17:59:39 +000017 TParseContext& parseContext = *GetGlobalParseContext();
18 sh::OutputHLSL outputHLSL(parseContext);
daniel@transgaming.come78c0c92010-03-28 19:36:06 +000019
alokp@chromium.org76b82082010-03-24 17:59:39 +000020 outputHLSL.header();
21 parseContext.treeRoot->traverse(&outputHLSL);
daniel@transgaming.come78c0c92010-03-28 19:36:06 +000022 outputHLSL.footer();
23
alokp@chromium.org76b82082010-03-24 17:59:39 +000024 return true;
25}