EPICS ARCHIVER V4
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups
CGIDemangler.h
1 // --------------------------------------------------------
2 // $Id: CGIDemangler.h,v 1.5 2006/06/05 17:01:43 kasemir Exp $
3 //
4 // Please refer to NOTICE.txt,
5 // included as part of this distribution,
6 // for legal information.
7 //
8 // Kay-Uwe Kasemir, kasemir@lanl.gov
9 // --------------------------------------------------------
10 
11 #ifndef CGI_DEMANGLER_H
12 #define CGI_DEMANGLER_H
13 
14 // tools
15 #include "tools/ToolsConfig.h"
16 #include "tools/NoCopy.h"
17 
19 
30 {
31 public:
32  CGIDemangler() {}
33 
36  static void unescape(char *text);
37 
41  static void unescape(stdString &text);
42 
46  void parse(const char *input);
47 
49  void add(const stdString &name, const stdString &value);
50 
52  stdString find(const stdString &name) const;
53 
55  const stdMap<stdString, stdString> &getVars () const
56  { return _vars; }
57 
58 private:
59  PROHIBIT_DEFAULT_COPY(CGIDemangler);
60  stdMap<stdString, stdString> _vars;
61 
62  void analyseVar(char *var);
63 };
64 
65 #endif
66 
67 
void parse(const char *input)
Demangle string input Creates an internal copy of the text for processing.
De-mangle CGI-type input.
Definition: CGIDemangler.h:29
static void unescape(char *text)
Reduce any &#39;%xx&#39; (percent sign,...) escape sequences to the characters they represent.
const stdMap< stdString, stdString > & getVars() const
Retrieve full map.
Definition: CGIDemangler.h:55
stdString find(const stdString &name) const
Query map.
void add(const stdString &name, const stdString &value)
Manually add another name/value to map.