CMS 3D CMS Logo

Public Member Functions | Private Attributes

CSCUngangedWireGrouping Class Reference

#include <CSCUngangedWireGrouping.h>

Inheritance diagram for CSCUngangedWireGrouping:
CSCWireGrouping

List of all members.

Public Member Functions

CSCWireGroupingclone () const
 CSCUngangedWireGrouping (int nwires)
float middleWireOfGroup (int wireGroup) const
int numberOfWireGroups () const
int numberOfWires () const
int numberOfWiresPerGroup (int wireGroup) const
int wireGroup (int wire) const
virtual ~CSCUngangedWireGrouping ()

Private Attributes

int theNumberOfWires

Detailed Description

A concrete CSCWireGrouping in which wires are not ganged.

Author:
Tim Cox

Definition at line 13 of file CSCUngangedWireGrouping.h.


Constructor & Destructor Documentation

virtual CSCUngangedWireGrouping::~CSCUngangedWireGrouping ( ) [inline, virtual]

Definition at line 15 of file CSCUngangedWireGrouping.h.

{}
CSCUngangedWireGrouping::CSCUngangedWireGrouping ( int  nwires) [inline, explicit]

Definition at line 16 of file CSCUngangedWireGrouping.h.

Referenced by clone().

                                                 : 
      theNumberOfWires( nwires ) {}

Member Function Documentation

CSCWireGrouping* CSCUngangedWireGrouping::clone ( void  ) const [inline, virtual]

Clone to handle correct copy of component objects referenced by base class pointer.

Implements CSCWireGrouping.

Definition at line 60 of file CSCUngangedWireGrouping.h.

References CSCUngangedWireGrouping().

                                 {
    return new CSCUngangedWireGrouping(*this);
  }
float CSCUngangedWireGrouping::middleWireOfGroup ( int  wireGroup) const [inline, virtual]

Middle of wire-group. This is the central wire no. for a group with an odd no. of wires. This is a pseudo-wire no. for a group with an even no. of wires. Accordingly, it is non-integer. Unganged, wire group is wire is middle!

Implements CSCWireGrouping.

Definition at line 53 of file CSCUngangedWireGrouping.h.

References wireGroup().

                                                 {
    return static_cast<float>( wireGroup ); }
int CSCUngangedWireGrouping::numberOfWireGroups ( ) const [inline, virtual]

How many wire groups. Unganged so #groups = #wires.

Implements CSCWireGrouping.

Definition at line 31 of file CSCUngangedWireGrouping.h.

References numberOfWires().

                                 {
    return numberOfWires(); }
int CSCUngangedWireGrouping::numberOfWires ( ) const [inline, virtual]

Total number of (virtual) wires. Some wires may not be implemented in the hardware. This is the number which would fill the region covered by wires, assuming the constant wire spacing.

Implements CSCWireGrouping.

Definition at line 25 of file CSCUngangedWireGrouping.h.

References theNumberOfWires.

Referenced by numberOfWireGroups().

                            {
    return theNumberOfWires; }
int CSCUngangedWireGrouping::numberOfWiresPerGroup ( int  wireGroup) const [inline, virtual]

How many wires in a wiregroup. Unganged so 1 wire/group.

Implements CSCWireGrouping.

Definition at line 37 of file CSCUngangedWireGrouping.h.

                                                   {
    return 1; }
int CSCUngangedWireGrouping::wireGroup ( int  wire) const [inline, virtual]

Wire group containing a given wire. Unganged means wire group is wire.

Implements CSCWireGrouping.

Definition at line 43 of file CSCUngangedWireGrouping.h.

Referenced by middleWireOfGroup().

                                {
    return wire; }

Member Data Documentation

Definition at line 65 of file CSCUngangedWireGrouping.h.

Referenced by numberOfWires().