File indexing completed on 2026-07-16 08:14:24
0001 #include "DiffuseLaserEventSelector.h"
0002
0003 #include <tpc/LaserEventInfo.h>
0004
0005 #include <ffaobjects/EventHeader.h>
0006
0007 #include <fun4all/Fun4AllReturnCodes.h>
0008
0009 #include <phool/PHCompositeNode.h>
0010 #include <phool/getClass.h>
0011 #include <phool/phool.h>
0012
0013 #include <iostream>
0014
0015 DiffuseLaserEventSelector::DiffuseLaserEventSelector(const std::string& name)
0016 : SubsysReco(name)
0017 {
0018 }
0019
0020 int DiffuseLaserEventSelector::process_event(PHCompositeNode* topNode)
0021 {
0022 LaserEventInfo* laserEventInfo =
0023 findNode::getClass<LaserEventInfo>(topNode, "LaserEventInfo");
0024
0025 if (!laserEventInfo)
0026 {
0027 std::cout << PHWHERE
0028 << " LaserEventInfo node is missing. Rejecting event."
0029 << std::endl;
0030
0031 return Fun4AllReturnCodes::DISCARDEVENT;
0032 }
0033
0034 EventHeader *eventHeader = findNode::getClass<EventHeader>(topNode, "EventHeader");
0035 if (!eventHeader)
0036 {
0037 std::cout << PHWHERE << " EventHeader Node missing, doing nothing." << std::endl;
0038 return Fun4AllReturnCodes::ABORTRUN;
0039 }
0040
0041 bool accept = true;
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060 if((eventHeader->get_RunNumber() > 66153 && laserEventInfo->isGl1LaserEvent()) || (eventHeader->get_RunNumber() <= 66153 && laserEventInfo->isLaserEvent()))
0061 {
0062 accept = true;
0063 }
0064 else
0065 {
0066 accept = false;
0067 }
0068
0069
0070
0071
0072
0073
0074
0075
0076
0077
0078
0079
0080 if (!accept)
0081 {
0082 return Fun4AllReturnCodes::ABORTEVENT;
0083 }
0084
0085 return Fun4AllReturnCodes::EVENT_OK;
0086 }