Main Page
Namespaces
Classes
Package Documentation
FWCore
MessageService
interface
MainThreadMLscribe.h
Go to the documentation of this file.
1
#ifndef FWCore_MessageService_MainThreadMLscribe_h
2
#define FWCore_MessageService_MainThreadMLscribe_h
3
4
#include "
FWCore/MessageLogger/interface/AbstractMLscribe.h
"
5
#include "
FWCore/MessageLogger/interface/MessageLoggerQ.h
"
6
#include "
FWCore/Utilities/interface/propagate_const.h
"
7
8
// I believe the below are not needed:
9
10
#include <memory>
11
12
#include <iosfwd>
13
#include <vector>
14
#include <map>
15
16
#include <iostream>
17
18
namespace
edm
{
19
namespace
service
{
20
21
// ----------------------------------------------------------------------
22
//
23
// MainThreadMLscribe.h
24
//
25
// This class is a concrete of AbstractMessageLoggerScribe
26
// Its purpose exists ONLY if there is a second thread running the workhorse
27
// scrribe. In that case, the workhorse will be consuming from a
28
// SingleConsumerQ, and this class is the one that places the item on said
29
// queue. It does work that used to be the realm of MessageLoggerQ.
30
//
31
// Changes:
32
//
33
// 0 - 8/7/09 Initial version mf and crj
34
//
35
// -----------------------------------------------------------------------
36
37
class
ThreadQueue
;
38
39
class
MainThreadMLscribe
:
public
AbstractMLscribe
40
{
41
public
:
42
// --- birth/death:
43
MainThreadMLscribe
(std::shared_ptr<ThreadQueue> tqp);
44
~MainThreadMLscribe
()
override
;
45
46
// --- receive and act on messages:
47
48
void
runCommand
(
MessageLoggerQ::OpCode
opcode,
void
* operand)
override
;
49
50
51
private
:
52
53
edm::propagate_const<std::shared_ptr<ThreadQueue>
>
m_queue
;
54
};
// MainThreadMLscribe
55
56
57
}
// end of namespace service
58
}
// namespace edm
59
60
61
#endif // FWCore_MessageService_MainThreadMLscribe_h
edm::propagate_const
Definition:
propagate_const.h:32
AbstractMLscribe.h
edm::service::AbstractMLscribe
Definition:
AbstractMLscribe.h:9
edm::service::MainThreadMLscribe::~MainThreadMLscribe
~MainThreadMLscribe() override
Definition:
MainThreadMLscribe.cc:21
edm::MessageLoggerQ::OpCode
OpCode
Definition:
MessageLoggerQ.h:29
edm::service::MainThreadMLscribe::m_queue
edm::propagate_const< std::shared_ptr< ThreadQueue > > m_queue
Definition:
MainThreadMLscribe.h:53
ThreadQueue
service
Definition:
service.py:1
MessageLoggerQ.h
edm::service::MainThreadMLscribe
Definition:
MainThreadMLscribe.h:39
edm
HLT enums.
Definition:
AlignableModifier.h:17
edm::service::MainThreadMLscribe::MainThreadMLscribe
MainThreadMLscribe(std::shared_ptr< ThreadQueue > tqp)
Definition:
MainThreadMLscribe.cc:16
propagate_const.h
edm::service::MainThreadMLscribe::runCommand
void runCommand(MessageLoggerQ::OpCode opcode, void *operand) override
Definition:
MainThreadMLscribe.cc:25
Generated for CMSSW Reference Manual by
1.8.11