Skip to content

Commit c7f1a9c

Browse files
vladimir-ivanov-ncbigouriano
authored andcommitted
Add CNcbiSample -- base class for the NCBI samples, to be used by the NEW_PROJECT-class utilities. JIRA:CXX-13694
git-svn-id: https://anonsvn.ncbi.nlm.nih.gov/repos/v1/trunk/c++@103200 78c7ea69-d796-4a43-9a09-de51944f1b03
1 parent a0c32f1 commit c7f1a9c

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

include/sample/ncbi_sample_api.hpp

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
#ifndef SAMPLE__NCBI_SAMPLE_API__HPP
2+
#define SAMPLE__NCBI_SAMPLE_API__HPP
3+
4+
/* $Id$
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: Denis Vakatov
30+
*
31+
*/
32+
33+
/// @file ncbi_sample_api.hpp
34+
/// CNcbiSample -- base class for the NCBI samples, to be used by
35+
/// the NEW_PROJECT-class utilities.
36+
37+
#include <corelib/ncbistl.hpp>
38+
39+
40+
/** @addtogroup SampleAPI
41+
*
42+
* @{
43+
*/
44+
45+
/// CNcbiSample -- base class for the NCBI samples, to be used
46+
/// by the NEW_PROJECT-class utilities.
47+
48+
class CNcbiSample
49+
{
50+
public:
51+
CNcbiSample() {}
52+
virtual ~CNcbiSample() {}
53+
54+
virtual std::string Description(void) = 0;
55+
56+
virtual void Init(void) = 0;
57+
virtual int Run (void) = 0;
58+
virtual void Exit(void) = 0;
59+
};
60+
61+
62+
/* @} */
63+
64+
#endif // SAMPLE__NCBI_SAMPLE_API__HPP

0 commit comments

Comments
 (0)