Imported Upstream version 2.4.2
[platform/upstream/libtool.git] / tests / tagdemo / foo.h
1 // -*- C++ -*-
2 //    foo.h -- interface to the libfoo* libraries
3 //
4 //    Copyright (C) 1998-1999 Free Software Foundation, Inc.
5 //    Written by Thomas Tanner, 1998
6 //
7 //    This file is part of GNU Libtool.
8 //
9 // GNU Libtool is free software; you can redistribute it and/or
10 // modify it under the terms of the GNU General Public License as
11 // published by the Free Software Foundation; either version 2 of
12 // the License, or (at your option) any later version.
13 //
14 // GNU Libtool is distributed in the hope that it will be useful,
15 // but WITHOUT ANY WARRANTY; without even the implied warranty of
16 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 // GNU General Public License for more details.
18 //
19 // You should have received a copy of the GNU General Public License
20 // along with GNU Libtool; see the file COPYING.  If not, a copy
21 // can be downloaded from  http://www.gnu.org/licenses/gpl.html,
22 // or obtained by writing to the Free Software Foundation, Inc.,
23 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
24
25 // Only include this header file once.
26 #ifndef _FOO_H_
27 #define _FOO_H_ 1
28
29 // Silly constants that the functions return.
30 #define HELLO_RET 0xe110
31 #define FOO_RET 0xf00
32
33 // Our C test functions.
34 extern "C"
35 {
36   int foo(void);
37   int hello(void);
38 }
39
40 // Our test C++ base class.
41 class foobar
42 {
43 public:
44   virtual int foo(void) = 0;
45   virtual int hello(void) = 0;
46   // Some dummy pure virtual functions.
47 };
48
49
50 // Our test C++ derived class.
51 class foobar_derived : public foobar
52 {
53 public:
54   virtual int foo(void);
55   virtual int hello(void);
56   // Override the base class' pure virtual functions.
57 };
58
59 #endif /* !_FOO_H_ */