ROOT logo
// $Id: ZIdentityListFilter.cxx 2456 2010-10-17 18:31:40Z matevz $

// Copyright (C) 1999-2008, Matevz Tadel. All rights reserved.
// This file is part of GLED, released under GNU General Public License version 2.
// For the licensing terms see $GLEDSYS/LICENSE or http://www.gnu.org/.

//__________________________________________________________________________
// ZIdentityListFilter
//
//

#include "ZIdentityListFilter.h"
#include <Glasses/ZHashList.h>
#include "ZIdentityListFilter.c7"
#include "Glasses/ZIdentity.h"
#include <Glasses/ZMirEmittingEntity.h>

ClassImp(ZIdentityListFilter);

/**************************************************************************/

void ZIdentityListFilter::_init()
{
  mOnMatch = ZMirFilter::R_Allow;
}

/**************************************************************************/

ZMirFilter::Result_e ZIdentityListFilter::FilterMIR(ZMIR& mir)
{
  if(mIdentities != 0) {
    GMutexHolder ids_lock(mIdentities->RefListMutex());
    AList::Stepper<> s(*mIdentities);
    while(s.step()) {
      if(mir.fCaller->HasIdentity((ZIdentity*)*s))
	return (Result_e)mOnMatch;
    }
    return NegateResult((Result_e)mOnMatch);
  }
  return PARENT_GLASS::FilterMIR(mir);
}

/**************************************************************************/
 ZIdentityListFilter.cxx:1
 ZIdentityListFilter.cxx:2
 ZIdentityListFilter.cxx:3
 ZIdentityListFilter.cxx:4
 ZIdentityListFilter.cxx:5
 ZIdentityListFilter.cxx:6
 ZIdentityListFilter.cxx:7
 ZIdentityListFilter.cxx:8
 ZIdentityListFilter.cxx:9
 ZIdentityListFilter.cxx:10
 ZIdentityListFilter.cxx:11
 ZIdentityListFilter.cxx:12
 ZIdentityListFilter.cxx:13
 ZIdentityListFilter.cxx:14
 ZIdentityListFilter.cxx:15
 ZIdentityListFilter.cxx:16
 ZIdentityListFilter.cxx:17
 ZIdentityListFilter.cxx:18
 ZIdentityListFilter.cxx:19
 ZIdentityListFilter.cxx:20
 ZIdentityListFilter.cxx:21
 ZIdentityListFilter.cxx:22
 ZIdentityListFilter.cxx:23
 ZIdentityListFilter.cxx:24
 ZIdentityListFilter.cxx:25
 ZIdentityListFilter.cxx:26
 ZIdentityListFilter.cxx:27
 ZIdentityListFilter.cxx:28
 ZIdentityListFilter.cxx:29
 ZIdentityListFilter.cxx:30
 ZIdentityListFilter.cxx:31
 ZIdentityListFilter.cxx:32
 ZIdentityListFilter.cxx:33
 ZIdentityListFilter.cxx:34
 ZIdentityListFilter.cxx:35
 ZIdentityListFilter.cxx:36
 ZIdentityListFilter.cxx:37
 ZIdentityListFilter.cxx:38
 ZIdentityListFilter.cxx:39
 ZIdentityListFilter.cxx:40
 ZIdentityListFilter.cxx:41
 ZIdentityListFilter.cxx:42
 ZIdentityListFilter.cxx:43