summaryrefslogtreecommitdiff
path: root/src/chat/base.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'src/chat/base.tmpl')
-rwxr-xr-xsrc/chat/base.tmpl46
1 files changed, 37 insertions, 9 deletions
diff --git a/src/chat/base.tmpl b/src/chat/base.tmpl
index 53b609f..5b0fceb 100755
--- a/src/chat/base.tmpl
+++ b/src/chat/base.tmpl
@@ -4,30 +4,58 @@
#include "base.h"
template<class type>
-base<type>::base() : smap<type*,string>::smap(HMAPOCC)
-{
-}
+base<type>::base()
+{}
template<class type>
base<type>::~base( )
+{}
+
+template<class type>
+type*
+base<type>::get_elem( string s_name, bool &b_found )
{
+ s_name = to_lower(s_name);
+ type* p_type = nhashmap<type*>::get_elem( s_name );
+ b_found = p_type == NULL ? false : true;
+ return p_type;
}
template<class type>
type*
-base<type>::get_elem( string s_name, bool &b_found )
+base<type>::get_elem( string s_name)
{
- s_name = to_lower(s_name);
- type* p_type = smap<type*,string>::get_elem( s_name );
- b_found = p_type == NULL ? false : true;
- return p_type;
+ bool b;
+ return get_elem(s_name, b);
}
template<class type>
void
base<type>::add_elem( type* p_type )
{
- smap<type*,string>::add_elem(p_type, p_type->get_lowercase_name());
+ nhashmap<type*>::add_elem(p_type, p_type->get_lowercase_name());
+}
+
+template<class type>
+void
+base<type>::dumpit()
+{
+ dumpable::add("[base]");
+ vector<string>* p_vec = nhashmap<type*>::get_key_vector();
+
+ vector<string>::iterator iter;
+ for (iter = p_vec->begin(); iter != p_vec->end(); ++iter)
+ {
+ dumpable::add(*iter);
+ type* p_elem = get_elem(*iter);
+ if (p_elem)
+ {
+ dumpable::next_no_newline();
+ dumpable::add(p_elem->dump(dumpable::get_level()));
+ }
+ }
+
+ delete p_vec;
}
#endif