NSCL DDAS  1.0
Support for XIA DDAS at the NSCL
 All Classes Namespaces Files Functions Variables Macros Pages
SetFileCrateWriter.h
Go to the documentation of this file.
1 /*
2  This software is Copyright by the Board of Trustees of Michigan
3  State University (c) Copyright 2017.
4 
5  You may use this software under the terms of the GNU public license
6  (GPL). The terms of this license are described at:
7 
8  http://www.gnu.org/licenses/gpl.txt
9 
10  Authors:
11  Ron Fox
12  Giordano Cerriza
13  NSCL
14  Michigan State University
15  East Lansing, MI 48824-1321
16 */
17 
21 #ifndef SETFILECRATEWRITER_H
22 #include "CrateWriter.h"
23 #include <string>
24 #include <map>
25 #include <vector>
26 #include <stdint.h>
27 
28 namespace DDAS {
29 
30 class SetFileEditor;
31 
38 {
39 private:
40  std::string m_filename;
41  SetFileEditor* m_pEditor;
42  std::map<uint16_t, uint16_t> m_slotSpeeds;
43 public:
45  const char* setFileName, const Crate& settings,
46  const std::vector<std::pair<uint16_t, uint16_t>>& slotspeeds
47  );
48  virtual ~SetFileCrateWriter();
49 
50  // Strategy handlers:
51 
52  virtual void startCrate(
53  int id, const std::vector<unsigned short>& slots
54  );
55  virtual void endCrate(
56  int id, const std::vector<unsigned short>& slots
57  );
58  virtual SettingsWriter* getWriter(unsigned short slotNum);
59 private:
60  void createEditor();
61  void copySetFile();
62 };
63 }
64 #endif
virtual void endCrate(int id, const std::vector< unsigned short > &slots)
Definition: SetFileCrateWriter.cpp:102
Definition: SettingsWriter.h:41
Definition: SetFileCrateWriter.h:37
Definition: ModuleSettings.h:106
virtual void startCrate(int id, const std::vector< unsigned short > &slots)
Definition: SetFileCrateWriter.cpp:78
Definition: SetFileEditor.h:34
Definition: CrateWriter.h:31
SetFileCrateWriter(const char *setFileName, const Crate &settings, const std::vector< std::pair< uint16_t, uint16_t >> &slotspeeds)
Definition: SetFileCrateWriter.cpp:48
virtual SettingsWriter * getWriter(unsigned short slotNum)
Definition: SetFileCrateWriter.cpp:118
Definition: functions.h:26
virtual ~SetFileCrateWriter()
Definition: SetFileCrateWriter.cpp:63