blob: 9ba94a5da9771fde44f36b2d0fc4a50903987c0a [file] [log] [blame]
Andrea Di Biagio8af3fe82018-03-08 16:08:43 +00001//===----------------------- View.h -----------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9/// \file
10///
11/// This file defines the main interface for Views. Each view contributes a
12/// portion of the final report generated by the tool.
13///
14//===----------------------------------------------------------------------===//
15
16#ifndef LLVM_TOOLS_LLVM_MCA_VIEW_H
17#define LLVM_TOOLS_LLVM_MCA_VIEW_H
18
19#include "HWEventListener.h"
20#include "llvm/Support/raw_ostream.h"
21
22namespace mca {
23
24class View : public HWEventListener {
25public:
26 virtual void printView(llvm::raw_ostream &OS) const = 0;
27 virtual ~View() = default;
28 void anchor() override;
29};
Andrea Di Biagio94fafdf2018-03-24 16:05:36 +000030} // namespace mca
Andrea Di Biagio8af3fe82018-03-08 16:08:43 +000031
32#endif