~ubuntu-branches/ubuntu/trusty/openjade1.3/trusty

« back to all changes in this revision

Viewing changes to grove/LocNode.h

  • Committer: Bazaar Package Importer
  • Author(s): Yann Dirson
  • Date: 2002-04-09 00:01:50 UTC
  • Revision ID: james.westby@ubuntu.com-20020409000150-r9rkyalxlhvf9ba3
Tags: upstream-1.3.1
ImportĀ upstreamĀ versionĀ 1.3.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright (c) 1997 James Clark
 
2
// See the file COPYING for copying permission.
 
3
 
 
4
#ifndef LocNode_INCLUDED
 
5
#define LocNode_INCLUDED 1
 
6
 
 
7
#include "Boolean.h"
 
8
#include "Node.h"
 
9
 
 
10
#ifdef SP_NAMESPACE
 
11
namespace SP_NAMESPACE {
 
12
#endif
 
13
 
 
14
class Location;
 
15
 
 
16
#ifdef GROVE_NAMESPACE
 
17
#define GROVE_NAMESPACE_SCOPE GROVE_NAMESPACE::
 
18
#else
 
19
#define GROVE_NAMESPACE_SCOPE
 
20
#endif
 
21
 
 
22
class GROVE_API LocNode {
 
23
public:
 
24
  virtual GROVE_NAMESPACE_SCOPE AccessResult getLocation(Location &) const = 0;
 
25
  static const GROVE_NAMESPACE_SCOPE Node::IID iid;
 
26
  static const LocNode *convert(const GROVE_NAMESPACE_SCOPE NodePtr &nd) {
 
27
    const void *p;
 
28
    if (nd && nd->queryInterface(iid, p))
 
29
      return (const LocNode *)p;
 
30
    else
 
31
      return 0;
 
32
  }
 
33
};
 
34
 
 
35
#undef GROVE_NAMESPACE_SCOPE
 
36
 
 
37
#ifdef SP_NAMESPACE
 
38
}
 
39
#endif
 
40
 
 
41
#endif /* not LocNode_INCLUDED */