rpcsx/rpcs3/Emu/RSX/D3D12/D3D12VertexProgramDecompiler.h

26 lines
1 KiB
C
Raw Normal View History

#pragma once
2015-10-21 10:24:02 +03:00
#include <vector>
2015-05-14 18:55:59 +02:00
#include <sstream>
2015-05-20 01:21:27 +02:00
#include "../Common/VertexProgramDecompiler.h"
2015-05-20 01:21:27 +02:00
struct D3D12VertexProgramDecompiler : public VertexProgramDecompiler
{
2015-05-14 18:55:59 +02:00
protected:
2015-05-20 01:21:27 +02:00
virtual std::string getFloatTypeName(size_t elementCount) override;
std::string getIntTypeName(size_t elementCount) override;
2015-05-20 01:21:27 +02:00
virtual std::string getFunction(enum class FUNCTION) override;
2015-05-20 01:59:24 +02:00
virtual std::string compareFunction(enum class COMPARE, const std::string &, const std::string &) override;
2015-05-20 01:21:27 +02:00
2015-05-14 18:55:59 +02:00
virtual void insertHeader(std::stringstream &OS);
virtual void insertInputs(std::stringstream &OS, const std::vector<ParamType> &inputs);
virtual void insertConstants(std::stringstream &OS, const std::vector<ParamType> &constants);
virtual void insertOutputs(std::stringstream &OS, const std::vector<ParamType> &outputs);
2015-05-14 19:25:49 +02:00
virtual void insertMainStart(std::stringstream &OS);
virtual void insertMainEnd(std::stringstream &OS);
const RSXVertexProgram &rsx_vertex_program;
public:
D3D12VertexProgramDecompiler(const RSXVertexProgram &prog);
};