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
enters the component to the broker s list in the given order Y2Component int int current_level same as but for external components which may reside in different directories The level identifies the directory prefix from the list defined in pathsearch cc bool false for clients bool true for clients Catalog of component take it if we can stat it and it is not take it if we can t stat it and its line matches in current level only name
Definition: componentcreator.txt:34
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
enters the component to the broker s list in the given order Y2Component int level
Definition: componentcreator.txt:21
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.11