CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Public Attributes | Static Private Attributes
OmniClusterRef Class Reference

#include <OmniClusterRef.h>

Public Types

typedef edm::Ref
< edmNew::DetSetVector
< SiPixelCluster >
, SiPixelCluster
ClusterPixelRef
 
typedef edm::Ref
< edm::LazyGetter
< SiStripCluster >
, SiStripCluster,
edm::FindValue< SiStripCluster > > 
ClusterRegionalRef
 
typedef edm::Ref
< edmNew::DetSetVector
< SiStripCluster >
, SiStripCluster
ClusterStripRef
 

Public Member Functions

ClusterPixelRef cluster_pixel () const
 
ClusterRegionalRef cluster_regional () const
 
ClusterStripRef cluster_strip () const
 
edm::ProductID id () const
 
unsigned int index () const
 
bool isNonRegionalStrip () const
 
bool isPixel () const
 
bool isRegional () const
 
bool isStrip () const
 
bool isValid () const
 
unsigned int key () const
 
 OmniClusterRef ()
 
 OmniClusterRef (ClusterPixelRef const &ref)
 
 OmniClusterRef (ClusterStripRef const &ref)
 
 OmniClusterRef (ClusterRegionalRef const &ref)
 
bool operator< (OmniClusterRef const &lh) const
 
bool operator== (OmniClusterRef const &lh) const
 
unsigned int rawIndex () const
 
SiStripCluster const & stripCluster () const
 

Public Attributes

edm::RefCoreWithIndex me
 

Static Private Attributes

static const unsigned int kInvalid = 0x80000000
 
static const unsigned int kIsRegional = 0x60000000
 
static const unsigned int kIsStrip = 0x20000000
 

Detailed Description

Definition at line 12 of file OmniClusterRef.h.

Member Typedef Documentation

Definition at line 19 of file OmniClusterRef.h.

Definition at line 21 of file OmniClusterRef.h.

Definition at line 20 of file OmniClusterRef.h.

Constructor & Destructor Documentation

OmniClusterRef::OmniClusterRef ( )
inline

Definition at line 23 of file OmniClusterRef.h.

23 : me(edm::RefCore(),kInvalid) {}
edm::RefCoreWithIndex me
static const unsigned int kInvalid
OmniClusterRef::OmniClusterRef ( ClusterPixelRef const &  ref)
inlineexplicit

Definition at line 24 of file OmniClusterRef.h.

24 : me(ref.refCore(), (ref.isNonnull() ? ref.key() : kInvalid) ){}
edm::RefCoreWithIndex me
static const unsigned int kInvalid
OmniClusterRef::OmniClusterRef ( ClusterStripRef const &  ref)
inlineexplicit

Definition at line 25 of file OmniClusterRef.h.

25 : me(ref.refCore(), (ref.isNonnull() ? ref.key() | kIsStrip : kInvalid) ){}
edm::RefCoreWithIndex me
static const unsigned int kIsStrip
static const unsigned int kInvalid
OmniClusterRef::OmniClusterRef ( ClusterRegionalRef const &  ref)
inlineexplicit

Definition at line 26 of file OmniClusterRef.h.

26 : me(ref.refCore(), (ref.isNonnull() ? ref.key() | kIsRegional : kInvalid)){}
edm::RefCoreWithIndex me
static const unsigned int kIsRegional
static const unsigned int kInvalid

Member Function Documentation

ClusterPixelRef OmniClusterRef::cluster_pixel ( ) const
inline

Definition at line 28 of file OmniClusterRef.h.

References index(), isPixel(), isValid(), me, and edm::RefCoreWithIndex::toRefCore().

Referenced by TrackerSingleRecHit::cluster_pixel().

28  {
29  return (isPixel() && isValid()) ? ClusterPixelRef(me.toRefCore(),index()) : ClusterPixelRef();
30  }
bool isValid() const
RefCore const & toRefCore() const
edm::RefCoreWithIndex me
edm::Ref< edmNew::DetSetVector< SiPixelCluster >, SiPixelCluster > ClusterPixelRef
bool isPixel() const
unsigned int index() const
ClusterRegionalRef OmniClusterRef::cluster_regional ( ) const
inline

Definition at line 36 of file OmniClusterRef.h.

References index(), isRegional(), me, and edm::RefCoreWithIndex::toRefCore().

Referenced by TrackerSingleRecHit::cluster_regional().

36  {
38  }
edm::Ref< edm::LazyGetter< SiStripCluster >, SiStripCluster, edm::FindValue< SiStripCluster > > ClusterRegionalRef
RefCore const & toRefCore() const
edm::RefCoreWithIndex me
bool isRegional() const
unsigned int index() const
ClusterStripRef OmniClusterRef::cluster_strip ( ) const
inline

Definition at line 32 of file OmniClusterRef.h.

References index(), isNonRegionalStrip(), me, and edm::RefCoreWithIndex::toRefCore().

Referenced by TrackerSingleRecHit::cluster_strip(), SeedClusterRemover::process(), and TrackClusterRemover::process().

32  {
34  }
RefCore const & toRefCore() const
bool isNonRegionalStrip() const
edm::RefCoreWithIndex me
unsigned int index() const
edm::Ref< edmNew::DetSetVector< SiStripCluster >, SiStripCluster > ClusterStripRef
edm::ProductID OmniClusterRef::id ( void  ) const
inline
unsigned int OmniClusterRef::index ( ) const
inline

Definition at line 61 of file OmniClusterRef.h.

References kIsRegional, and rawIndex().

Referenced by BeautifulSoup.PageElement::_invert(), cluster_pixel(), cluster_regional(), cluster_strip(), key(), and stripCluster().

61 { return rawIndex() & (~kIsRegional);}
unsigned int rawIndex() const
static const unsigned int kIsRegional
bool OmniClusterRef::isNonRegionalStrip ( ) const
inline

Definition at line 68 of file OmniClusterRef.h.

References kIsRegional, kIsStrip, and rawIndex().

Referenced by cluster_strip().

68 {return (rawIndex() & kIsRegional)==kIsStrip;}
unsigned int rawIndex() const
static const unsigned int kIsStrip
static const unsigned int kIsRegional
bool OmniClusterRef::isPixel ( ) const
inline

Definition at line 65 of file OmniClusterRef.h.

References isStrip().

Referenced by cluster_pixel().

65 { return !isStrip(); } //NOTE: non-valid will also show up as a pixel
bool isStrip() const
bool OmniClusterRef::isRegional ( ) const
inline

Definition at line 67 of file OmniClusterRef.h.

References kIsRegional, and rawIndex().

Referenced by cluster_regional(), and stripCluster().

67 { return (rawIndex() & kIsRegional)==kIsRegional; }
unsigned int rawIndex() const
static const unsigned int kIsRegional
bool OmniClusterRef::isStrip ( ) const
inline

Definition at line 66 of file OmniClusterRef.h.

References kIsStrip, and rawIndex().

Referenced by isPixel().

66 { return rawIndex() & kIsStrip; }
unsigned int rawIndex() const
static const unsigned int kIsStrip
bool OmniClusterRef::isValid ( void  ) const
inline

Definition at line 64 of file OmniClusterRef.h.

References kInvalid, and rawIndex().

Referenced by cluster_pixel().

64 { return !(rawIndex() & kInvalid); }
unsigned int rawIndex() const
static const unsigned int kInvalid
unsigned int OmniClusterRef::key ( ) const
inline
bool OmniClusterRef::operator< ( OmniClusterRef const &  lh) const
inline

Definition at line 49 of file OmniClusterRef.h.

References rawIndex().

49  {
50  return rawIndex() < lh.rawIndex(); // in principle this is enough!
51  }
unsigned int rawIndex() const
bool int lh
Definition: SIMDVec.h:19
bool OmniClusterRef::operator== ( OmniClusterRef const &  lh) const
inline

Definition at line 45 of file OmniClusterRef.h.

References rawIndex().

45  {
46  return rawIndex() == lh.rawIndex(); // in principle this is enough!
47  }
unsigned int rawIndex() const
bool int lh
Definition: SIMDVec.h:19
unsigned int OmniClusterRef::rawIndex ( ) const
inline

Definition at line 59 of file OmniClusterRef.h.

References edm::RefCoreWithIndex::index(), and me.

Referenced by index(), isNonRegionalStrip(), isRegional(), isStrip(), isValid(), operator<(), and operator==().

59 { return me.index();}
unsigned int index() const
edm::RefCoreWithIndex me
SiStripCluster const& OmniClusterRef::stripCluster ( ) const
inline

Definition at line 41 of file OmniClusterRef.h.

References index(), isRegional(), me, and edm::RefCoreWithIndex::toRefCore().

Referenced by TrackerSingleRecHit::stripCluster().

41  {
43  }
edm::Ref< edm::LazyGetter< SiStripCluster >, SiStripCluster, edm::FindValue< SiStripCluster > > ClusterRegionalRef
RefCore const & toRefCore() const
edm::RefCoreWithIndex me
bool isRegional() const
unsigned int index() const
edm::Ref< edmNew::DetSetVector< SiStripCluster >, SiStripCluster > ClusterStripRef

Member Data Documentation

const unsigned int OmniClusterRef::kInvalid = 0x80000000
staticprivate

Definition at line 14 of file OmniClusterRef.h.

Referenced by isValid().

const unsigned int OmniClusterRef::kIsRegional = 0x60000000
staticprivate

Definition at line 16 of file OmniClusterRef.h.

Referenced by index(), isNonRegionalStrip(), and isRegional().

const unsigned int OmniClusterRef::kIsStrip = 0x20000000
staticprivate

Definition at line 15 of file OmniClusterRef.h.

Referenced by isNonRegionalStrip(), and isStrip().

edm::RefCoreWithIndex OmniClusterRef::me