yast2-core
Y2CCPlugin.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | |
3 | __ __ ____ _____ ____ |
4 | \ \ / /_ _/ ___|_ _|___ \ |
5 | \ V / _` \___ \ | | __) | |
6 | | | (_| |___) || | / __/ |
7 | |_|\__,_|____/ |_| |_____| |
8 | |
9 | core system |
10 | (C) SuSE GmbH |
11 \----------------------------------------------------------------------/
12 
13  File: Y2CCPlugin.h
14 
15  Author: Arvin Schnell <arvin@suse.de>
16  Maintainer: Arvin Schnell <arvin@suse.de>
17 
18 /-*/
19 // -*- c++ -*-
20 
21 #ifndef Y2CCPlugin_h
22 #define Y2CCPlugin_h
23 
24 #include <regex.h>
25 #include <map>
26 
27 #include "Y2ComponentCreator.h"
28 #include "Y2PluginComponent.h"
29 
30 
32 {
37 
38  /*
39  * all this mutable and const is needed since create is const.
40  * and all this is needed since you have to recompile a regex
41  * when you call setlocale.
42  */
43 
47  mutable regex_t rxs1, rxr1, rxr2, rxr3;
48 
49  mutable int my_nl_msg_cat_cntr;
50  void make_rxs () const;
51  void free_rxs () const;
52 
53  std::map<string,Y2PluginComponent*> components;
54 public:
60  Y2CCPlugin (bool server);
61 
65  bool isServerCreator () const;
66 
71  Y2Component* createInLevel (const char* name, int level, int current_level) const;
72 
76  Y2Component* provideNamespace(const char* name_space);
77 
78 };
79 
80 
81 #endif // Y2CCPlugin_h
regex_t rxs1
Definition: Y2CCPlugin.h:47
bool isServerCreator() const
Definition: Y2CCPlugin.cc:39
int my_nl_msg_cat_cntr
Definition: Y2CCPlugin.h:49
regex_t rxr1
Definition: Y2CCPlugin.h:47
Y2Component * createInLevel(const char *name, int level, int current_level) const
Definition: Y2CCPlugin.cc:75
void make_rxs() const
Definition: Y2CCPlugin.cc:46
Communication handle to a YaST2 component.
Definition: Y2Component.h:262
Definition: Y2CCPlugin.h:31
Y2CCPlugin(bool server)
Definition: Y2CCPlugin.cc:30
regex_t rxr2
Definition: Y2CCPlugin.h:47
regex_t rxr3
Definition: Y2CCPlugin.h:47
void free_rxs() const
Definition: Y2CCPlugin.cc:65
Y2Component * provideNamespace(const char *name_space)
Definition: Y2CCPlugin.cc:120
bool creates_servers
Definition: Y2CCPlugin.h:36
Can create certain YaST2 components As documented in Y2Component, there are many ways how to realize ...
Definition: Y2ComponentCreator.h:43
std::map< string, Y2PluginComponent * > components
Definition: Y2CCPlugin.h:53

Generated on a sunny day for yast2-core by doxygen 1.8.6