// $Header: /cvs/gled-1.2/GledCore/Glasses/ZMEESelfFilter.cxx,v 1.3 2005/03/11 17:50:15 matevz Exp $
// Copyright (C) 1999-2005, 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/.
//__________________________________________________________________________
// ZMEESelfFilter
//
//
#include "ZMEESelfFilter.h"
#include "ZMEESelfFilter.c7"
ClassImp(ZMEESelfFilter)
/**************************************************************************/
void ZMEESelfFilter::_init()
{
// !!!! Set all links to 0 !!!!
}
/**************************************************************************/
ZMirFilter::Result_e ZMEESelfFilter::FilterMIR(ZMIR& mir)
{
// Allows execution if Alpha == Caller (which is a MEE) and
// the method is tagged by the "MEE::Self" tag.
// Otherwise returns a remapped R_None.
const string mee_self_tag("MEE::Self");
if(mir.Caller == mir.Alpha) {
GledNS::ClassInfo* ci = GledNS::FindClassInfo(FID_t(mir.Lid, mir.Cid));
GledNS::MethodInfo* mi = ci->FindMethodInfo(mir.Mid);
for(lStr_i i=mi->fTags.begin(); i!=mi->fTags.end(); ++i) {
if(*i == mee_self_tag)
return ZMirFilter::R_Allow;
}
}
return PARENT_GLASS::FilterMIR(mir);
}
ROOT page - Home page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.