Line data Source code
1 : //* This file is part of the MOOSE framework 2 : //* https://mooseframework.inl.gov 3 : //* 4 : //* All rights reserved, see COPYRIGHT for full restrictions 5 : //* https://github.com/idaholab/moose/blob/master/COPYRIGHT 6 : //* 7 : //* Licensed under LGPL 2.1, please see LICENSE for details 8 : //* https://www.gnu.org/licenses/lgpl-2.1.html 9 : 10 : #include "ReporterState.h" 11 : 12 : #include "MooseObject.h" 13 : 14 1247515 : ReporterStateBase::ReporterStateBase(const ReporterName & name) : _reporter_name(name) {} 15 : 16 : void 17 52653 : ReporterStateBase::addConsumer(ReporterMode mode, const MooseObject & moose_object) 18 : { 19 52653 : _consumers.emplace(mode, &moose_object); 20 52653 : } 21 : 22 : bool 23 117886 : operator<(const std::pair<ReporterMode, const MooseObject *> & a, 24 : const std::pair<ReporterMode, const MooseObject *> & b) 25 : { 26 : // Sort by object type, object name, and then mode 27 229595 : return a.second->type() < b.second->type() || 28 376813 : (a.second->type() == b.second->type() && a.second->name() < b.second->name()) || 29 256337 : (a.second->type() == b.second->type() && a.second->name() == b.second->name() && 30 190554 : a.first < b.first); 31 : }