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

Go to the SVN repository for this file.

1 /* $Id: GBProject_ver2.hpp 59444 2013-08-26 17:38:09Z rafanovi $
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  */
27 
28 /// @file GBProject_ver2.hpp
29 /// User-defined methods of the data storage class.
30 ///
31 /// This file was originally generated by application DATATOOL
32 /// using the following specifications:
33 /// 'gbproj.asn'.
34 ///
35 /// New methods or data members can be added to it if needed.
36 /// See also: GBProject_ver2_.hpp
37 
38 
39 #ifndef OBJECTS_GBPROJ_GBPROJECT_VER2_HPP
40 #define OBJECTS_GBPROJ_GBPROJECT_VER2_HPP
41 
42 
43 // generated includes
46 
47 // generated classes
48 
50 
51 BEGIN_objects_SCOPE // namespace ncbi::objects::
52 
53 /////////////////////////////////////////////////////////////////////////////
55  : public CGBProject_ver2_Base
56  , public IGBProject
57 {
59 public:
60  CGBProject_ver2(void);
61  ~CGBProject_ver2(void);
62 
63  /// @name IGBProject Implementation
64  /// @{
65  /// See IGNProject for comments
67 
68  void AddItem(CProjectItem& item, CProjectFolder& folder);
69 
70  const CProjectFolder& GetData() const;
72 
73  bool IsSetDescr() const;
74  const CProjectDescr& GetDescr() const;
76  void SetDescr(CProjectDescr& descr);
77 
78  bool IsSetAnnot() const;
79  const IGBProject::TAnnot& GetAnnot() const;
81 
82  /// retrieve the data loader descriptor set for this project
83  virtual bool IsSetDataLoaders() const;
84  virtual const TDataLoaders& GetDataLoaders() const;
85  virtual TDataLoaders& SetDataLoaders();
86 
87  bool IsSetViews() const;
88  const IGBProject::TViews& GetViews() const;
90 
91  virtual bool IsSetViewSettings() const;
92  virtual const TViewSettings& GetViewSettings() const;
93  virtual TViewSettings& SetViewSettings();
94 
95  void SetDirtyFlag(bool dirty);
96  bool GetDirtyFlag() const;
97 
98  void SetCreateDate(const CDate& date);
99 
100  void SetModifiedDate(const CDate& date);
101  /// @}
102 private:
103  // Prohibit copy constructor and assignment operator
106 
107 private:
108  bool m_Dirty; /// true if changes have not been saved
109 };
110 
111 /////////////////// CGBProject_ver2 inline methods
112 
113 
114 inline
116 {
117  return eVersion2;
118 }
119 
120 
121 /////////////////// end of CGBProject_ver2 inline methods
122 
123 
124 END_objects_SCOPE // namespace ncbi::objects::
125 
127 
128 
129 #endif // OBJECTS_GBPROJ_GBPROJECT_VER2_HPP
130 /* Original file checksum: lines: 86, chars: 2505, CRC32: 2f94a777 */
Data storage class.
Definition: Date.hpp:53
Version 2 project With version two we start a new paradigm The first item in the project *MUST* be a ...
EProjectVersion GetVersion() const
retrieve this project's version; this is fixed per subclass
CGBProject_ver2_Base Tparent
CGBProject_ver2(const CGBProject_ver2 &value)
CGBProject_ver2 & operator=(const CGBProject_ver2 &value)
IGBProject - abstract interface for a project used by CGBProjectHandle.
Definition: igbproject.hpp:57
virtual void SetModifiedDate(const CDate &date)=0
SetModifiedDate() will add a descriptor for the update date.
list< CRef< CLoaderDescriptor > > TDataLoaders
Definition: igbproject.hpp:70
virtual void AddItem(CProjectItem &item, CProjectFolder &folder)=0
Add an item to the current project.
virtual TDataLoaders & SetDataLoaders()=0
virtual bool IsSetDataLoaders() const =0
data loader info.
virtual const TViewSettings & GetViewSettings() const =0
virtual const TDataLoaders & GetDataLoaders() const =0
virtual void SetCreateDate(const CDate &date)=0
SetCreateDate() will add a descriptor for creation date.
virtual TViewSettings & SetViewSettings()=0
list< CRef< CViewDescriptor > > TViews
Definition: igbproject.hpp:69
virtual bool IsSetViewSettings() const =0
view-specific settings.
virtual EProjectVersion GetVersion() const =0
retrieve this project's version; this is fixed per subclass
list< CRef< CUser_object > > TViewSettings
Definition: igbproject.hpp:71
list< CRef< CProjectAnnot > > TAnnot
Definition: igbproject.hpp:68
char value[7]
Definition: config.c:431
#define NCBI_GBPROJ_EXPORT
Definition: gbproj_export.h:69
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
TAnnot & SetAnnot(void)
Assign a value to Annot data member.
const TDescr & GetDescr(void) const
Get the Descr member data.
bool IsSetViews(void) const
bool IsSetAnnot(void) const
arbitrary annotations Check if a value has been assigned to Annot data member.
TViews & SetViews(void)
Assign a value to Views data member.
bool IsSetDescr(void) const
standard descriptors Check if a value has been assigned to Descr data member.
const TData & GetData(void) const
Get the Data member data.
TData & SetData(void)
Assign a value to Data data member.
const TViews & GetViews(void) const
Get the Views member data.
TDescr & SetDescr(void)
Assign a value to Descr data member.
const TAnnot & GetAnnot(void) const
Get the Annot member data.
Modified on Sun Feb 25 03:03:17 2024 by modify_doxy.py rev. 669887