webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Public Types | Public Member Functions | Static Public Member Functions | List of all members
WebCore::PODIntervalTree< T, UserData > Class Template Reference

#include <PODIntervalTree.h>

Inheritance diagram for WebCore::PODIntervalTree< T, UserData >:
WebCore::PODRedBlackTree< PODInterval< T, UserData > > WebCore::PODRedBlackTree< PODInterval< T, UserData > >

Public Types

typedef PODInterval< T, UserData > IntervalType
 
typedef PODIntervalSearchAdapter< T, UserData > IntervalSearchAdapterType
 
typedef PODInterval< T, UserData > IntervalType
 
typedef PODIntervalSearchAdapter< T, UserData > IntervalSearchAdapterType
 
- Public Types inherited from WebCore::PODRedBlackTree< PODInterval< T, UserData > >
enum  Color
 
enum  Color
 

Public Member Functions

 PODIntervalTree ()
 
Vector< IntervalTypeallOverlaps (const IntervalType &interval) const
 
void allOverlaps (const IntervalType &interval, Vector< IntervalType > &result) const
 
template<class AdapterType >
void allOverlapsWithAdapter (AdapterType &adapter) const
 
bool checkInvariants () const override
 
 PODIntervalTree ()
 
Vector< IntervalTypeallOverlaps (const IntervalType &interval) const
 
void allOverlaps (const IntervalType &interval, Vector< IntervalType > &result) const
 
template<class AdapterType >
void allOverlapsWithAdapter (AdapterType &adapter) const
 
bool checkInvariants () const override
 
- Public Member Functions inherited from WebCore::PODRedBlackTree< PODInterval< T, UserData > >
 PODRedBlackTree ()
 
 PODRedBlackTree ()
 
virtual ~PODRedBlackTree ()
 
virtual ~PODRedBlackTree ()
 
void clear ()
 
void clear ()
 
void add (const PODInterval< T, UserData > &data)
 
void add (const PODInterval< T, UserData > &data)
 
bool remove (const PODInterval< T, UserData > &data)
 
bool remove (const PODInterval< T, UserData > &data)
 
bool contains (const PODInterval< T, UserData > &data) const
 
bool contains (const PODInterval< T, UserData > &data) const
 
void visitInorder (Visitor *visitor) const
 
void visitInorder (Visitor *visitor) const
 
int size () const
 
int size () const
 
void setNeedsFullOrderingComparisons (bool needsFullOrderingComparisons)
 
void setNeedsFullOrderingComparisons (bool needsFullOrderingComparisons)
 
void dump () const
 
void dump () const
 
void setVerboseDebugging (bool verboseDebugging)
 
void setVerboseDebugging (bool verboseDebugging)
 

Static Public Member Functions

static IntervalType createInterval (const T &low, const T &high, const UserData data=0)
 
static IntervalType createInterval (const T &low, const T &high, const UserData data=0)
 

Additional Inherited Members

- Protected Member Functions inherited from WebCore::PODRedBlackTree< PODInterval< T, UserData > >
Noderoot () const
 
Noderoot () const
 

Member Typedef Documentation

◆ IntervalSearchAdapterType [1/2]

template<class T, class UserData = void*>
typedef PODIntervalSearchAdapter<T, UserData> WebCore::PODIntervalTree< T, UserData >::IntervalSearchAdapterType

◆ IntervalSearchAdapterType [2/2]

template<class T, class UserData = void*>
typedef PODIntervalSearchAdapter<T, UserData> WebCore::PODIntervalTree< T, UserData >::IntervalSearchAdapterType

◆ IntervalType [1/2]

template<class T, class UserData = void*>
typedef PODInterval<T, UserData> WebCore::PODIntervalTree< T, UserData >::IntervalType

◆ IntervalType [2/2]

template<class T, class UserData = void*>
typedef PODInterval<T, UserData> WebCore::PODIntervalTree< T, UserData >::IntervalType

Constructor & Destructor Documentation

◆ PODIntervalTree() [1/2]

template<class T, class UserData = void*>
WebCore::PODIntervalTree< T, UserData >::PODIntervalTree ( )
inline

◆ PODIntervalTree() [2/2]

template<class T, class UserData = void*>
WebCore::PODIntervalTree< T, UserData >::PODIntervalTree ( )
inline

Member Function Documentation

◆ allOverlaps() [1/4]

template<class T, class UserData = void*>
Vector<IntervalType> WebCore::PODIntervalTree< T, UserData >::allOverlaps ( const IntervalType interval) const
inline

◆ allOverlaps() [2/4]

template<class T, class UserData = void*>
Vector<IntervalType> WebCore::PODIntervalTree< T, UserData >::allOverlaps ( const IntervalType interval) const
inline

◆ allOverlaps() [3/4]

template<class T, class UserData = void*>
void WebCore::PODIntervalTree< T, UserData >::allOverlaps ( const IntervalType interval,
Vector< IntervalType > &  result 
) const
inline

◆ allOverlaps() [4/4]

template<class T, class UserData = void*>
void WebCore::PODIntervalTree< T, UserData >::allOverlaps ( const IntervalType interval,
Vector< IntervalType > &  result 
) const
inline

◆ allOverlapsWithAdapter() [1/2]

template<class T, class UserData = void*>
template<class AdapterType >
void WebCore::PODIntervalTree< T, UserData >::allOverlapsWithAdapter ( AdapterType &  adapter) const
inline

◆ allOverlapsWithAdapter() [2/2]

template<class T, class UserData = void*>
template<class AdapterType >
void WebCore::PODIntervalTree< T, UserData >::allOverlapsWithAdapter ( AdapterType &  adapter) const
inline

◆ checkInvariants() [1/2]

template<class T, class UserData = void*>
bool WebCore::PODIntervalTree< T, UserData >::checkInvariants ( ) const
inlineoverridevirtual

◆ checkInvariants() [2/2]

template<class T, class UserData = void*>
bool WebCore::PODIntervalTree< T, UserData >::checkInvariants ( ) const
inlineoverridevirtual

◆ createInterval() [1/2]

template<class T, class UserData = void*>
static IntervalType WebCore::PODIntervalTree< T, UserData >::createInterval ( const T low,
const T high,
const UserData  data = 0 
)
inlinestatic

◆ createInterval() [2/2]

template<class T, class UserData = void*>
static IntervalType WebCore::PODIntervalTree< T, UserData >::createInterval ( const T low,
const T high,
const UserData  data = 0 
)
inlinestatic

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