1
// Copyright (c) 1997 James Clark
2
// See the file COPYING for copying permission.
4
#ifndef LocNode_INCLUDED
5
#define LocNode_INCLUDED 1
11
namespace SP_NAMESPACE {
16
#ifdef GROVE_NAMESPACE
17
#define GROVE_NAMESPACE_SCOPE GROVE_NAMESPACE::
19
#define GROVE_NAMESPACE_SCOPE
22
class GROVE_API LocNode {
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) {
28
if (nd && nd->queryInterface(iid, p))
29
return (const LocNode *)p;
35
#undef GROVE_NAMESPACE_SCOPE
41
#endif /* not LocNode_INCLUDED */