NCBI C++ ToolKit
seqgraphic_job_result.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 #ifndef GUI_WIDGETS_SEQ_GRAPHIC___SG_JOB_RESULT__HPP
2 #define GUI_WIDGETS_SEQ_GRAPHIC___SG_JOB_RESULT__HPP
3 
4 /* $Id: seqgraphic_job_result.hpp 46327 2021-03-19 19:28:09Z shkeda $
5  * ===========================================================================
6  *
7  * PUBLIC DOMAIN NOTICE
8  * National Center for Biotechnology Information
9  *
10  * This software/database is a "United States Government Work" under the
11  * terms of the United States Copyright Act. It was written as part of
12  * the author's official duties as a United States Government employee and
13  * thus cannot be copyrighted. This software/database is freely available
14  * to the public for use. The National Library of Medicine and the U.S.
15  * Government have not placed any restriction on its use or reproduction.
16  *
17  * Although all reasonable efforts have been taken to ensure the accuracy
18  * and reliability of the software and data, the NLM and the U.S.
19  * Government do not and cannot warrant the performance or results that
20  * may be obtained by using this software or data. The NLM and the U.S.
21  * Government disclaim all warranties, express or implied, including
22  * warranties of performance, merchantability or fitness for any particular
23  * purpose.
24  *
25  * Please cite the author in any work or product based on this material.
26  *
27  * ===========================================================================
28  *
29  * Authors: Liangshou Wu
30  *
31  * File Description:
32  *
33  */
34 
35 #include <corelib/ncbiobj.hpp>
36 #include <gui/gui_export.h>
39 
41 
42 
43 static const int kInvalidJobToken = -1;
44 
45 
46 ///////////////////////////////////////////////////////////////////////////////
47 /// CJobResultBase -- the basic job result class holding a token.
48 ///
50 {
51 public:
52  typedef int TJobToken;
53 
54  /// the token is recognizable by the job listener.
55  /// It may be used when a job listener deals with more than one kind
56  /// of jobs.
58 };
59 
60 
61 ///////////////////////////////////////////////////////////////////////////////
62 /// CSGJobResult -- the data structure holding the seqgraphic job results.
63 ///
65 {
66 public:
68 
69  virtual ~CSGJobResult() {};
70 
71  size_t Size() { return m_ObjectList.size(); }
72 
73  /// the loaded data stored in the form of CSeqGlyph.
75 
76  /// additional generated layout.
77  /// such as hist, smear bar and graph.
79 
80  /// additional comment glyphs.
81  /// used for showing labels at an arbitrary position.
83 
84  /// Owner of the job result.
85  /// Most of the time, the job owner is the listener of the job,
86  /// usually the layout track. So for that case, m_Owner may be void.
87  /// For other cases where the job owner is a sub-glyph in a track,
88  /// then m_Owner must be specified.
90 
91  /// data description.
92  /// optional.
93  string m_Desc;
94 
95  /// Filter description.
96  /// optional.
97  string m_FilterDescr;
98 };
99 
101 {
102 public:
104  objects::CTSE_Handle m_DataHandle;
105 };
106 
108 {
110  const objects::SAnnotSelector& sel)
111  : m_Feat(feat)
112  , m_Sel(sel)
113  {
114  }
115 
116  /// the layout feature contains both target sequence and top sequence.
118 
119  objects::SAnnotSelector m_Sel;
120 };
121 
122 typedef vector<SFeatBatchJobRequest> TFeatBatchJobRequests;
123 
124 ///////////////////////////////////////////////////////////////////////////////
125 /// CBatchJobResult -- the data structure holding the seqgraphic job results
126 /// for a batch job processing.
127 ///
129 {
130 public:
131  typedef vector< CRef<CSGJobResult> > TResults;
132 
134 };
135 
137 
138 #endif // GUI_WIDGETS_SEQ_GRAPHIC___SG_JOB_RESULT__HPP
CBatchJobResult – the data structure holding the seqgraphic job results for a batch job processing.
vector< CRef< CSGJobResult > > TResults
CJobResultBase – the basic job result class holding a token.
TJobToken m_Token
the token is recognizable by the job listener.
CObject –.
Definition: ncbiobj.hpp:180
objects::CTSE_Handle m_DataHandle
CSGJobResult – the data structure holding the seqgraphic job results.
CSeqGlyph::TObjects m_ObjectList
the loaded data stored in the form of CSeqGlyph.
string m_Desc
data description.
CRef< CSeqGlyph > m_ExtraObj
additional generated layout.
string m_FilterDescr
Filter description.
CRef< CSeqGlyph > m_Owner
Owner of the job result.
CSeqGlyph::TObjects m_CommentObjs
additional comment glyphs.
list< CRef< CSeqGlyph > > TObjects
Definition: seq_glyph.hpp:85
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define NCBI_GUIWIDGETS_SEQGRAPHIC_EXPORT
Definition: gui_export.h:536
Defines to provide correct exporting from DLLs in Windows.
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.
vector< SFeatBatchJobRequest > TFeatBatchJobRequests
static const int kInvalidJobToken
objects::SAnnotSelector m_Sel
SFeatBatchJobRequest(CFeatGlyph *feat, const objects::SAnnotSelector &sel)
CRef< CFeatGlyph > m_Feat
the layout feature contains both target sequence and top sequence.
Modified on Wed Jun 19 17:03:24 2024 by modify_doxy.py rev. 669887