Esempio n. 1
0
void CMSHit::RecordMatches(CLadderContainer& LadderContainer,
                           int iMod,
						   CMSPeak *Peaks,
						   unsigned ModMask,
						   CMod ModList[],
						   int NumMod,
						   const char *PepStart,
                           int Searchctermproduct,
                           int Searchb1,
                           int TheoreticalMassIn
						   )
{
    // create hitlist.  note that this is deleted in the assignment operator
    CreateHitInfo();


	// need to calculate the number of mods from mask and NumMod(?)
	NumModInfo = CountMods(ModMask,NumMod);
	ModInfo.reset(new CMSModInfo[NumModInfo]);

    SetTheoreticalMass() = TheoreticalMassIn;

    // increment thru hithist
    int iHitInfo(0); 
    EMSPeakListTypes Which = Peaks->GetWhich(GetCharge());

    SetM() = 0;
    SetSum() = 0;
    // scan thru each ladder

    int ChargeLimit(0);
    if (GetCharge() < Peaks->GetConsiderMult()) 
        ChargeLimit = 1;
    TLadderMap::iterator Iter;
    LadderContainer.Begin(Iter, ChargeLimit, ChargeLimit);
    while(Iter != LadderContainer.SetLadderMap().end()) {
        RecordMatchesScan(*((*(Iter->second))[iMod]),iHitInfo, Peaks, Which, Searchb1, Searchctermproduct);
        LadderContainer.Next(Iter, ChargeLimit, ChargeLimit);
    }
    SetN() = (Peaks->GetPeakLists())[Which]->GetNum();

	// need to make function to save the info in ModInfo
	RecordModInfo(ModMask,
				  ModList,
				  NumMod,
				  PepStart
				  );
}
  //
  // Retrieve
  //
  // Retrieve data from the task, return TRUE if filled
  //
  Bool TransportPad::Retrieve(U32 id, RetrievedData &data)
  {
    switch (id)
    {
      case TaskRetrieve::Progress:
      {
        if (subject->GetTelepadLink())
        {
          return (FALSE);
        }

        data.f1 = GetCharge();

        // Display different charging vs charged bars
        if (data.f1 < 1.0F)
        {
          data.u1 = 0x4F2144F1; // "Tasks::TransportPad::Charge"
        }
        else
        {
          data.u1 = 0x23DBCCCA; // "Tasks::TransportPad::Charged"
        }

        return (TRUE);
      }

      case TaskRetrieve::Count:
      {
        data.u1 = subject->GetUsedSpaces();
        return (TRUE);
      }
    }

    return (GameTask<TransportObjType, TransportObj>::Retrieve(id, data));
  }
Esempio n. 3
0
	void AParticle::DisplayInfo(std::ostream& s) const
  { 
   	s << "  Particle " << GetID() << ": " << GetParticleName();
    s << "  Charge: " << GetCharge() << "  Mass: " << GetMass() << std::endl;
   	s << "  Primary: " << GetIsPrimary() << " -> Mother ID: " << GetMotherId() << std::endl;
   	s << "  Initial Vertex: " << PrintTVector3(GetVertex());
    s << "  Initial 4-Momentum: " << PrintTLorentzVector(GetP4());
    s << "  Initial Kinetic E: " << GetEkin() << std::endl;
   	s << "  Properties: " << std::endl << PrintProperties();
  }