3065 some functions in the tcp module can be static
[unleashed.git] / usr / src / cmd / man / src / util / nsgmls.src / include / PosixStorage.h
blob7d23790971e351e6b14afe8a51ecacf88ce7c956
1 // Copyright (c) 1994, 1995 James Clark
2 // See the file COPYING for copying permission.
3 #pragma ident "%Z%%M% %I% %E% SMI"
5 #ifndef PosixStorage_INCLUDED
6 #define PosixStorage_INCLUDED 1
7 #ifdef __GNUG__
8 #pragma interface
9 #endif
11 #include "StorageManager.h"
12 #include "DescriptorManager.h"
13 #include "Vector.h"
14 #include "StringC.h"
15 #include "CharsetInfo.h"
17 #ifdef SP_NAMESPACE
18 namespace SP_NAMESPACE {
19 #endif
21 class Messenger;
22 class CharsetInfo;
23 class UnivCharsetDesc;
24 class Filename;
25 class OutputCodingSystem;
27 class SP_API PosixStorageManager : public IdStorageManager {
28 public:
29 PosixStorageManager(const char *type,
30 const CharsetInfo *filenameCharset,
31 #ifndef SP_WIDE_SYSTEM
32 const OutputCodingSystem *filenameCodingSystem,
33 #endif
34 int maxFDs);
35 StorageObject *makeStorageObject(const StringC &id,
36 const StringC &baseId,
37 Boolean search,
38 Boolean mayRewind,
39 Messenger &,
40 StringC &foundId);
41 Boolean resolveRelative(const StringC &, StringC &, Boolean syntactic = 0)
42 const;
43 const char *type() const;
44 void addSearchDir(const StringC &);
45 Boolean transformNeutral(StringC &, Boolean fold, Messenger &) const;
46 private:
47 Boolean isAbsolute(const StringC &) const;
48 StringC extractDir(const StringC &) const;
49 StringC combineDir(const StringC &, const StringC &) const;
50 PosixStorageManager(const PosixStorageManager &); // undefined
51 void operator=(const PosixStorageManager &); // undefined
52 DescriptorManager descriptorManager_;
53 #ifndef SP_WIDE_SYSTEM
54 const OutputCodingSystem *filenameCodingSystem_;
55 #endif
56 const char *type_;
57 Vector<StringC> searchDirs_;
60 class SP_API PosixFdStorageManager : public IdStorageManager {
61 public:
62 PosixFdStorageManager(const char *type,
63 const CharsetInfo *filenameCharset);
64 StorageObject *makeStorageObject(const StringC &id,
65 const StringC &baseId,
66 Boolean,
67 Boolean mayRewind,
68 Messenger &mgr,
69 StringC &foundId);
70 const char *type() const;
71 Boolean inheritable() const;
72 private:
73 PosixFdStorageManager(const PosixFdStorageManager &); // undefined
74 void operator=(const PosixFdStorageManager &); // undefined
75 const char *type_;
79 #ifdef SP_NAMESPACE
81 #endif
83 #endif /* not PosixStorage_INCLUDED */