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

TMuiPseudoBLTMapO Class Reference
[Interface Object Containers]

Container for MUID TMutMuiPseudoBLTO objects. More...

#include <TMuiPseudoBLTMapO.h>

List of all members.

Public Methods

Insertors
 TMuiPseudoBLTMapO ()
 TMuiPseudoBLTMapO (PHKey::map_key_type map_key)
virtual ~TMuiPseudoBLTMapO ()
iterator insert_new (UShort_t arm)
Extractors
iterator get (UShort_t arm)
const_iterator get (UShort_t arm) const

Private Methods

UShort_t get_roll_count ()

Private Attributes

UShort_t _count


Detailed Description

Container for MUID TMutMuiPseudoBLTO objects.

TMutMuiPseudoBLTMapO - IOC for TMutMuiPseudoBLT objects

Definition at line 32 of file TMuiPseudoBLTMapO.h.


Constructor & Destructor Documentation

TMuiPseudoBLTMapO  
 

Default contructor

Definition at line 6 of file TMuiPseudoBLTMapO.cxx.

00006 : _count(0){;}

TMuiPseudoBLTMapO PHKey::map_key_type    map_key
 

Construct with key

Definition at line 9 of file TMuiPseudoBLTMapO.cxx.

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

virtual ~TMuiPseudoBLTMapO   [inline, virtual]
 

Virtual destructor

Definition at line 48 of file TMuiPseudoBLTMapO.h.

00048 {;}


Member Function Documentation

TMuiPseudoBLTMapO::const_iterator get UShort_t    arm const
 

Get a const iterator to the TMuiPseudoBLT object in given arm, one for each arm.

Definition at line 53 of file TMuiPseudoBLTMapO.cxx.

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

00054 {
00055   // key range associated with this arm
00056   //
00057   TMuiKeyGen::key_range range = TMuiKeyGen::get_key_range(arm);
00058   // return the iterator with specified range
00059   //
00060   Key lower(get_map_key(),range.first);
00061   Key upper(get_map_key(),range.second);
00062   return find(lower,upper);
00063 }

TMuiPseudoBLTMapO::iterator get UShort_t    arm
 

Get an iterator to the TMuiPseudoBLT object in given arm, one for each arm

Definition at line 39 of file TMuiPseudoBLTMapO.cxx.

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

Referenced by mMuiBLTEmulator::check_blt.

00040 {
00041   // key range associated with this arm
00042   //
00043   TMuiKeyGen::key_range range = TMuiKeyGen::get_key_range(arm);
00044   // return the iterator with specified range
00045   //
00046   Key lower(get_map_key(),range.first);
00047   Key upper(get_map_key(),range.second);
00048   return find(lower,upper);
00049 }

UShort_t get_roll_count   [inline, private]
 

Definition at line 71 of file TMuiPseudoBLTMapO.h.

References _count, and TMuiKeyGen::get_max_index.

Referenced by insert_new.

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

TMuiPseudoBLTMapO::iterator insert_new UShort_t    arm
 

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

Definition at line 12 of file TMuiPseudoBLTMapO.cxx.

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

Referenced by mMuiBLTEmulator::fill_map.

00013 {  
00014   // Get the new index from the roll count;
00015   //
00016   UShort_t index = get_roll_count();
00017   
00018   // get the key for the new TMuiPseudoBLT object
00019   //
00020   TMuiKeyGen::key_type key = TMuiKeyGen::get_key(arm,
00021                                                  index);
00022   // full key
00023   //
00024   Key full_key(get_map_key(),key);
00025   
00026   // insert cluster
00027   //
00028   insert(full_key, new value_imp_type(full_key,
00029                                       arm,
00030                                       index));
00031   
00032   // okay not so efficient 
00033   //
00034   return find(full_key);
00035 }


Member Data Documentation

UShort_t _count [private]
 

Definition at line 72 of file TMuiPseudoBLTMapO.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: