Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

TMuiHitMapO Class Reference
[Interface Object Containers]

Container for MUID TMutMuiRoadO objects. More...

#include <TMuiHitMapO.h>

List of all members.

Public Methods

Insertors
 TMuiHitMapO ()
 TMuiHitMapO (PHKey::map_key_type map_key)
virtual ~TMuiHitMapO ()
iterator insert_new (UShort_t arm, UShort_t plane, UShort_t panel, UShort_t orientation, UShort_t twopack)
iterator insert_clone (const TMuiHitMapO::pointer hit_ptr)
Extractors
iterator get (UShort_t arm)
const_iterator get (UShort_t arm) const
iterator get (UShort_t arm, UShort_t plane, UShort_t panel, UShort_t orientation)
const_iterator get (UShort_t arm, UShort_t plane, UShort_t panel, UShort_t orientation) const
iterator get (UShort_t arm, UShort_t plane, UShort_t panel, UShort_t orientation, UShort_t twopack)
const_iterator get (UShort_t arm, UShort_t plane, UShort_t panel, UShort_t orientation, UShort_t twopack) const

Private Methods

UShort_t get_roll_count ()

Private Attributes

UShort_t _count


Detailed Description

Container for MUID TMutMuiRoadO objects.

TMutMuiRoadMapO - IOC for TMutMuiRoad objects

Definition at line 32 of file TMuiHitMapO.h.


Constructor & Destructor Documentation

TMuiHitMapO  
 

Default contructor

Definition at line 6 of file TMuiHitMapO.cxx.

00006 : _count(0) {;}

TMuiHitMapO PHKey::map_key_type    map_key
 

Construct with key

Definition at line 9 of file TMuiHitMapO.cxx.

00009 : PHMap<PHKey::key_type, TMuiHitO, TMuiHitO_v1>(map_key), _count(0){;}

virtual ~TMuiHitMapO   [inline, virtual]
 

Virtual destructor

Definition at line 48 of file TMuiHitMapO.h.

00048 {;}


Member Function Documentation

TMuiHitMapO::const_iterator get UShort_t    arm,
UShort_t    plane,
UShort_t    panel,
UShort_t    orientation,
UShort_t    twopack
const
 

Get a const iterator to all roads in given twopack

Definition at line 150 of file TMuiHitMapO.cxx.

References TMuiKeyGen::get_key, and TMuiKeyGen::key_type.

00155 {
00156   TMuiKeyGen::key_type key = TMuiKeyGen::get_key(arm,
00157                                                  plane,
00158                                                  panel,
00159                                                  orientation,
00160                                                  twopack);
00161   Key full_key(get_map_key(), key);
00162   return find(full_key);
00163 }

TMuiHitMapO::iterator get UShort_t    arm,
UShort_t    plane,
UShort_t    panel,
UShort_t    orientation,
UShort_t    twopack
 

Get an iterator to all roads in given twopack

Definition at line 134 of file TMuiHitMapO.cxx.

References TMuiKeyGen::get_key, and TMuiKeyGen::key_type.

00139 {
00140   TMuiKeyGen::key_type key = TMuiKeyGen::get_key(arm,
00141                                                  plane,
00142                                                  panel,
00143                                                  orientation,
00144                                                  twopack);
00145   Key full_key(get_map_key(), key);
00146   return find(full_key);
00147 }

TMuiHitMapO::const_iterator get UShort_t    arm,
UShort_t    plane,
UShort_t    panel,
UShort_t    orientation
const
 

Get a const iterator to all roads in given panel_orientation

Definition at line 118 of file TMuiHitMapO.cxx.

References TMuiKeyGen::get_key_range, and TMuiKeyGen::key_range.

00122 {
00123   TMuiKeyGen::key_range range = TMuiKeyGen::get_key_range(arm,
00124                                                           plane,
00125                                                           panel,
00126                                                           orientation);
00127   Key lower(get_map_key(),range.first);
00128   Key upper(get_map_key(),range.second);
00129   
00130   return find(lower,upper);
00131 }

TMuiHitMapO::iterator get UShort_t    arm,
UShort_t    plane,
UShort_t    panel,
UShort_t    orientation
 

Get an iterator to all roads in given panel_orientation

Definition at line 102 of file TMuiHitMapO.cxx.

References TMuiKeyGen::get_key_range, and TMuiKeyGen::key_range.

00106 {
00107   TMuiKeyGen::key_range range = TMuiKeyGen::get_key_range(arm,
00108                                                           plane,
00109                                                           panel,
00110                                                           orientation);
00111   Key lower(get_map_key(),range.first);
00112   Key upper(get_map_key(),range.second);
00113   return find(lower,upper);
00114 }

TMuiHitMapO::const_iterator get UShort_t    arm const
 

Get a const iterator to all roads in given arm

Definition at line 88 of file TMuiHitMapO.cxx.

References TMuiKeyGen::get_key_range, and TMuiKeyGen::key_range.

00089 {
00090   // Range 
00091   //
00092   TMuiKeyGen::key_range range = TMuiKeyGen::get_key_range(arm);
00093 
00094   // return the iterator with specified range
00095   //
00096   Key lower(get_map_key(),range.first);
00097   Key upper(get_map_key(),range.second);
00098   return find(lower,upper);
00099 }

TMuiHitMapO::iterator get UShort_t    arm
 

Get an iterator to all roads in given arm

Definition at line 73 of file TMuiHitMapO.cxx.

References TMuiKeyGen::get_key_range, and TMuiKeyGen::key_range.

Referenced by mMuiEvalFramework::eval_unpacker, mMuiResponse::fill_hit, mMuiClusterFinder::find_clusters, mMuiFastRoadFinder::hit_to_logical, mMuiFastRoadFinder::hit_to_logical_per_panel, mMuiBLTEmulator::is_reco_1D, and mMuiBLTEmulator::is_reco_1S.

00074 {
00075   // Range 
00076   //
00077   TMuiKeyGen::key_range range = TMuiKeyGen::get_key_range(arm);
00078 
00079   // return the iterator with specified range
00080   //
00081   Key lower(get_map_key(),range.first);
00082   Key upper(get_map_key(),range.second);
00083   return find(lower,upper);
00084 }

UShort_t get_roll_count   [inline, private]
 

Definition at line 107 of file TMuiHitMapO.h.

References _count, and TMuiKeyGen::get_max_index.

Referenced by insert_new.

00107 { return _count++%TMuiKeyGen::get_max_index();}

TMuiHitMapO::iterator insert_clone const TMuiHitMapO::pointer    hit_ptr
 

Default contructor

Definition at line 50 of file TMuiHitMapO.cxx.

00051 {
00052   // Full key is object key from to be cloned object and
00053   // map key from this map.
00054   //
00055   Key full_key(get_map_key(),hit_ptr->get()->get_key().get_obj_key());
00056   
00057   // Construct cloned from input hit
00058   //
00059   insert(full_key, new value_imp_type(hit_ptr->get()));
00060   
00061   // Cloned object still has the wrong map key so we
00062   // we fix that.
00063   //
00064   TMuiHitMapO::iterator hit_iter = find(full_key);
00065   hit_iter->get()->set_key(full_key);
00066   
00067   // Return the cloned object
00068   //
00069   return hit_iter;
00070 }

TMuiHitMapO::iterator insert_new UShort_t    arm,
UShort_t    plane,
UShort_t    panel,
UShort_t    orientation,
UShort_t    twopack
 

Insert an new TMuiHitO into map and return an iterator to the newly created object.

Definition at line 12 of file TMuiHitMapO.cxx.

References TMuiKeyGen::get_key, get_roll_count, and TMuiKeyGen::key_type.

Referenced by mMuiRawUnpack::event, and mMuiResponse::fill_hit.

00018 {
00019   // Get the new index from the roll count;
00020   //
00021   UShort_t index = get_roll_count();
00022   
00023   // get the key for the new cluster
00024   //
00025   TMuiKeyGen::key_type key = TMuiKeyGen::get_key(arm,
00026                                                  plane,
00027                                                  panel,
00028                                                  orientation,
00029                                                  index);
00030   // full key
00031   //
00032   Key full_key(get_map_key(),key);
00033   
00034   // insert cluster
00035   //
00036   insert(full_key, new value_imp_type(full_key,
00037                                       arm,
00038                                       plane,
00039                                       panel,
00040                                       orientation,
00041                                       twopack,                                   
00042                                       index));
00043   
00044   // okay not so efficient 
00045   //
00046   return find(full_key);
00047 }


Member Data Documentation

UShort_t _count [private]
 

Definition at line 108 of file TMuiHitMapO.h.

Referenced by get_roll_count.


The documentation for this class was generated from the following files:
MUIOO: PHENIX Muon Identifier Analysis Framework. Documentation by doxygen
Last modified: