LoadToFilN.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2014 by Paul Demorest
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 #ifndef __baseband_dsp_LoadToFilN_h
10 #define __baseband_dsp_LoadToFilN_h
11 
12 #include "dsp/LoadToFil.h"
13 #include "dsp/MultiThread.h"
14 
15 class ThreadContext;
16 
17 namespace dsp {
18 
19  class OutputFileShare;
20 
22  class LoadToFilN : public MultiThread
23  {
24 
25  public:
26 
29 
31  void set_nthread (unsigned);
32 
35 
37  void share ();
38 
40  void finish ();
41 
42  protected:
43 
45 
47 
50 
52  virtual LoadToFil* new_thread ();
53 
54  LoadToFil* at (unsigned index);
55 
56  // XXX not sure if needed
57  //template <class T>
58  //bool prepare_subint_archival ();
59 
60 
61  };
62 
63 }
64 
65 #endif // !defined(__LoadToFilN_h)
66 
67 
68 
69 
70 
void share()
Setup sharing.
Definition: LoadToFilN.C:70
Contains all Baseband Data Reduction Library classes.
Definition: ASCIIObservation.h:17
Reference::To< OutputFileShare > output_file
OutputFile sharing.
Definition: LoadToFilN.h:49
virtual LoadToFil * new_thread()
The creator of new LoadToFil threads.
Definition: LoadToFilN.C:107
Share one OutputFile among multiple processing threads.
Definition: OutputFileShare.h:35
Multiple pipeline threads.
Definition: MultiThread.h:21
void set_nthread(unsigned)
Set the number of thread to be used.
Definition: LoadToFilN.C:33
void finish()
Finish by ensuring that all buffered outputs are flushed.
Definition: LoadToFilN.C:93
Load, unpack, process and fold data into phase-averaged profile(s)
Definition: LoadToFil.h:72
Multiple LoadToFil threads.
Definition: LoadToFilN.h:22
LoadToFilN(LoadToFil::Config *)
Constructor.
Definition: LoadToFilN.C:26
Reference::To< LoadToFil::Config > configuration
Configuration parameters.
Definition: LoadToFilN.h:46
A single LoadToFil thread.
Definition: LoadToFil.h:30
unsigned nthread
void set_configuration(LoadToFil::Config *)
Set the configuration to be used in prepare and run.
Definition: LoadToFilN.C:60

Generated using doxygen 1.8.17