Rudiments
rpcentry.h
1 // Copyright (c) 2002 David Muse
2 // See the COPYING file for more information.
3 
4 #ifndef RUDIMENTS_RPCENTRY_H
5 #define RUDIMENTS_RPCENTRY_H
6 
7 #include <rudiments/private/rpcentryincludes.h>
8 
9 #ifdef RUDIMENTS_NAMESPACE
10 namespace rudiments {
11 #endif
12 
13 class rpcentryprivate;
14 
17 class RUDIMENTS_DLLSPEC rpcentry {
18  public:
19 
23  static bool getNumber(const char *name, int32_t *number);
24 
31  static bool getAliasList(const char *name,
32  char ***aliaslist);
33 
37  static bool getName(int32_t number, char **name);
38 
45  static bool getAliasList(int32_t number, char ***aliaslist);
46 
48  rpcentry();
49 
52  rpcentry(const rpcentry &r);
53 
56  rpcentry &operator=(const rpcentry &r);
57 
59  ~rpcentry();
60 
63  bool initialize(const char *name);
64 
67  bool initialize(int32_t number);
68 
70  const char *getName() const;
71 
73  int32_t getNumber() const;
74 
77  const char * const *getAliasList() const;
78 
80  void print() const;
81 
84  static bool needsMutex();
85 
89  static void setMutex(mutex *mtx);
90 
91  #include <rudiments/private/rpcentry.h>
92 };
93 
94 #ifdef RUDIMENTS_NAMESPACE
95 }
96 #endif
97 
98 #endif