ROOT logo
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

// $MpId: $ 

/// \ingroup mptrigger
/// \class AliMpTriggerCrate
/// \brief The class defines the properties of trigger crate
///
/// \author Ch. Finck, Subatech Nantes

#ifndef ALI_MP_TRIGGER_CRATE_H
#define ALI_MP_TRIGGER_CRATE_H

#include "AliMpArrayI.h"

#include <TNamed.h>
#include <TString.h>

class AliMpTriggerCrate : public  TNamed {

  public:
    AliMpTriggerCrate(const Char_t* name, UShort_t Id);
    AliMpTriggerCrate(TRootIOCtor* /*ioCtor*/);
    virtual ~AliMpTriggerCrate();
    
    static TString GenerateName(Int_t crateId, Int_t ddlId, Int_t nodDdls);

    // methods 
    Bool_t AddLocalBoard(Int_t localBoardId);

    /// get methods
    Int_t  GetDdlId() const;
    UShort_t GetId()  const;
    Int_t  GetNofLocalBoards() const;
    Int_t  GetLocalBoardId(Int_t index) const;
    Bool_t HasLocalBoard(Int_t localBoardId) const;
    
    /// set methods
    void SetDdlId(Int_t ddl) {fDdlId = ddl;}
    
  private:
    /// Not implemented
    AliMpTriggerCrate();
    /// Not implemented
    AliMpTriggerCrate(const AliMpTriggerCrate& rhs);
    /// Not implemented
    AliMpTriggerCrate& operator=(const AliMpTriggerCrate& rhs);

    // data members
    UShort_t     fId;         ///< crate number
    Int_t        fDdlId;      ///< DDL to which this bus patch is connected
    AliMpArrayI  fLocalBoard; ///< local board connected to this crate

  ClassDef(AliMpTriggerCrate,3)  // The class collectiong electronics properties of DDL
};

// inline functions


/// Return the Ddl  Id
inline Int_t AliMpTriggerCrate::GetDdlId() const
{  return fDdlId; }

/// Return  Id
inline UShort_t AliMpTriggerCrate::GetId() const
{  return fId; }


#endif //ALI_MP_TRIGGER__CRATE_H














 AliMpTriggerCrate.h:1
 AliMpTriggerCrate.h:2
 AliMpTriggerCrate.h:3
 AliMpTriggerCrate.h:4
 AliMpTriggerCrate.h:5
 AliMpTriggerCrate.h:6
 AliMpTriggerCrate.h:7
 AliMpTriggerCrate.h:8
 AliMpTriggerCrate.h:9
 AliMpTriggerCrate.h:10
 AliMpTriggerCrate.h:11
 AliMpTriggerCrate.h:12
 AliMpTriggerCrate.h:13
 AliMpTriggerCrate.h:14
 AliMpTriggerCrate.h:15
 AliMpTriggerCrate.h:16
 AliMpTriggerCrate.h:17
 AliMpTriggerCrate.h:18
 AliMpTriggerCrate.h:19
 AliMpTriggerCrate.h:20
 AliMpTriggerCrate.h:21
 AliMpTriggerCrate.h:22
 AliMpTriggerCrate.h:23
 AliMpTriggerCrate.h:24
 AliMpTriggerCrate.h:25
 AliMpTriggerCrate.h:26
 AliMpTriggerCrate.h:27
 AliMpTriggerCrate.h:28
 AliMpTriggerCrate.h:29
 AliMpTriggerCrate.h:30
 AliMpTriggerCrate.h:31
 AliMpTriggerCrate.h:32
 AliMpTriggerCrate.h:33
 AliMpTriggerCrate.h:34
 AliMpTriggerCrate.h:35
 AliMpTriggerCrate.h:36
 AliMpTriggerCrate.h:37
 AliMpTriggerCrate.h:38
 AliMpTriggerCrate.h:39
 AliMpTriggerCrate.h:40
 AliMpTriggerCrate.h:41
 AliMpTriggerCrate.h:42
 AliMpTriggerCrate.h:43
 AliMpTriggerCrate.h:44
 AliMpTriggerCrate.h:45
 AliMpTriggerCrate.h:46
 AliMpTriggerCrate.h:47
 AliMpTriggerCrate.h:48
 AliMpTriggerCrate.h:49
 AliMpTriggerCrate.h:50
 AliMpTriggerCrate.h:51
 AliMpTriggerCrate.h:52
 AliMpTriggerCrate.h:53
 AliMpTriggerCrate.h:54
 AliMpTriggerCrate.h:55
 AliMpTriggerCrate.h:56
 AliMpTriggerCrate.h:57
 AliMpTriggerCrate.h:58
 AliMpTriggerCrate.h:59
 AliMpTriggerCrate.h:60
 AliMpTriggerCrate.h:61
 AliMpTriggerCrate.h:62
 AliMpTriggerCrate.h:63
 AliMpTriggerCrate.h:64
 AliMpTriggerCrate.h:65
 AliMpTriggerCrate.h:66
 AliMpTriggerCrate.h:67
 AliMpTriggerCrate.h:68
 AliMpTriggerCrate.h:69
 AliMpTriggerCrate.h:70
 AliMpTriggerCrate.h:71
 AliMpTriggerCrate.h:72
 AliMpTriggerCrate.h:73
 AliMpTriggerCrate.h:74
 AliMpTriggerCrate.h:75
 AliMpTriggerCrate.h:76
 AliMpTriggerCrate.h:77
 AliMpTriggerCrate.h:78
 AliMpTriggerCrate.h:79
 AliMpTriggerCrate.h:80
 AliMpTriggerCrate.h:81
 AliMpTriggerCrate.h:82
 AliMpTriggerCrate.h:83
 AliMpTriggerCrate.h:84