summaryrefslogtreecommitdiff
path: root/modl.h
blob: fec4f2e64b8266b99143436fd935d11bf2e1ad3e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// class modl declaration.

#ifndef MODL_H
#define MODL_H

#include "incl.h"
#include "hmap.h"

using namespace std;


class modl
{
private:
    hmap<dynmod*,string>* map_mods;
    pthread_mutex_t mut_map_mods;

    static  void dlclose_( dynmod* mod   );
    dynmod* cache_module ( string s_name );
    void preload_modules( string *p_path );

public:
    modl();
    ~modl();

    dynmod* get_module  ( string s_name );

    hmap<dynmod*,string>* 
    get_map_mods() { return map_mods; }
};

#endif