34 lines
		
	
	
		
			992 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			992 B
		
	
	
	
		
			C++
		
	
	
	
//===----------------------- View.h -----------------------------*- C++ -*-===//
 | 
						|
//
 | 
						|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 | 
						|
// See https://llvm.org/LICENSE.txt for license information.
 | 
						|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 | 
						|
//
 | 
						|
//===----------------------------------------------------------------------===//
 | 
						|
/// \file
 | 
						|
///
 | 
						|
/// This file defines the main interface for Views. Each view contributes a
 | 
						|
/// portion of the final report generated by the tool.
 | 
						|
///
 | 
						|
//===----------------------------------------------------------------------===//
 | 
						|
 | 
						|
#ifndef LLVM_TOOLS_LLVM_MCA_VIEW_H
 | 
						|
#define LLVM_TOOLS_LLVM_MCA_VIEW_H
 | 
						|
 | 
						|
#include "llvm/MCA/HWEventListener.h"
 | 
						|
#include "llvm/Support/raw_ostream.h"
 | 
						|
 | 
						|
namespace llvm {
 | 
						|
namespace mca {
 | 
						|
 | 
						|
class View : public HWEventListener {
 | 
						|
public:
 | 
						|
  virtual void printView(llvm::raw_ostream &OS) const = 0;
 | 
						|
  virtual ~View() = default;
 | 
						|
  void anchor() override;
 | 
						|
};
 | 
						|
} // namespace mca
 | 
						|
} // namespace llvm
 | 
						|
 | 
						|
#endif
 |