LLVM 20.0.0git
Classes | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | List of all members
llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType > Class Template Reference

#include "llvm/MC/MCPseudoProbe.h"

Inheritance diagram for llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >:
Inheritance graph
[legend]

Public Member Functions

bool isRoot () const
 
InlinedProbeTreeMapgetChildren ()
 
const InlinedProbeTreeMapgetChildren () const
 
std::vector< ProbeType > & getProbes ()
 
const std::vector< ProbeType > & getProbes () const
 
void addProbes (ProbeType Probe)
 
DerivedProbeInlineTreeType * getOrAddNode (const InlineSite &Site)
 

Public Attributes

uint64_t Guid = 0
 
MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType > * Parent
 

Protected Types

using InlinedProbeTreeMap = std::unordered_map< InlineSite, std::unique_ptr< DerivedProbeInlineTreeType >, InlineSiteHash >
 

Protected Member Functions

 MCPseudoProbeInlineTreeBase ()
 

Protected Attributes

InlinedProbeTreeMap Children
 
std::vector< ProbeType > Probes
 

Detailed Description

template<typename ProbeType, typename DerivedProbeInlineTreeType>
class llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >

Definition at line 215 of file MCPseudoProbe.h.

Member Typedef Documentation

◆ InlinedProbeTreeMap

template<typename ProbeType , typename DerivedProbeInlineTreeType >
using llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::InlinedProbeTreeMap = std::unordered_map< InlineSite, std::unique_ptr<DerivedProbeInlineTreeType>, InlineSiteHash>
protected

Definition at line 224 of file MCPseudoProbe.h.

Constructor & Destructor Documentation

◆ MCPseudoProbeInlineTreeBase()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::MCPseudoProbeInlineTreeBase ( )
inlineprotected

Member Function Documentation

◆ addProbes()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
void llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::addProbes ( ProbeType  Probe)
inline

◆ getChildren() [1/2]

template<typename ProbeType , typename DerivedProbeInlineTreeType >
InlinedProbeTreeMap & llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getChildren ( )
inline

◆ getChildren() [2/2]

template<typename ProbeType , typename DerivedProbeInlineTreeType >
const InlinedProbeTreeMap & llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getChildren ( ) const
inline

◆ getOrAddNode()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
DerivedProbeInlineTreeType * llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getOrAddNode ( const InlineSite Site)
inline

◆ getProbes() [1/2]

template<typename ProbeType , typename DerivedProbeInlineTreeType >
std::vector< ProbeType > & llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getProbes ( )
inline

◆ getProbes() [2/2]

template<typename ProbeType , typename DerivedProbeInlineTreeType >
const std::vector< ProbeType > & llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::getProbes ( ) const
inline

◆ isRoot()

template<typename ProbeType , typename DerivedProbeInlineTreeType >
bool llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::isRoot ( ) const
inline

Member Data Documentation

◆ Children

template<typename ProbeType , typename DerivedProbeInlineTreeType >
InlinedProbeTreeMap llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Children
protected

◆ Guid

template<typename ProbeType , typename DerivedProbeInlineTreeType >
uint64_t llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Guid = 0

◆ Parent

template<typename ProbeType , typename DerivedProbeInlineTreeType >
MCPseudoProbeInlineTreeBase<ProbeType, DerivedProbeInlineTreeType>* llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Parent

◆ Probes

template<typename ProbeType , typename DerivedProbeInlineTreeType >
std::vector<ProbeType> llvm::MCPseudoProbeInlineTreeBase< ProbeType, DerivedProbeInlineTreeType >::Probes
protected

The documentation for this class was generated from the following file: