CPairManager.C
//-----------------------------------------------------------------------------
// $Header: /tmp_mnt/asis/offline/ceres/cool/project/RCS/CPairManager.C,v 2.1 1996/10/04 08:45:46 voigt Exp $
//
// COOL Program Library
// Copyright (C) CERES collaboration, 1996
//
// Implementation of class CPairManager.
//
//-----------------------------------------------------------------------------
#include "CPairManager.h"
#include "CList.h"
#include "CPair.h"
#include "CElectronTrack.h"
#include "rw/tvvector.h"
CPairManager::CPairManager() {}
CPairManager::~CPairManager() {}
void CPairManager::reset()
{
tracks.clear();
}
void CPairManager::addPair(CList<CPair>& pairList, CElectronTrack* leg1, CElectronTrack* leg2)
{
if (leg1 && leg2)
pairList.append(new CPair(*leg1, *leg2));
}
void CPairManager::addPair(CList<CPair>& pairList, CPair* pair)
{
if (pair)
pairList.append(pair);
}
void CPairManager::addTrack(CElectronTrack* track)
{
if (track) tracks.append(track);
}
void CPairManager::makePairs(CList<CPair>& pairList)
{
int i, j;
for (i=0; i<tracks.length(); i++)
for (j=i+1; j<tracks.length(); j++)
pairList.append(new CPair(*tracks(i), *tracks(j)));
}