crabmeat 1.0
Loading...
Searching...
No Matches
kmount.h
1
17
18#ifndef CBM_KMOUNT_H_
19#define CBM_KMOUNT_H_
20
21#include "crabmeat-common.h"
22#include "string/cbm_string.h"
23
24namespace cbm {
25
26class kernel_t;
27struct RunLevelArgs;
28
29struct entities_t;
30struct services_t;
31
32struct mountargs_t
33{
34 mountargs_t()
35 : cfg( NULL), ptr( NULL) { }
36 char const * cfg; /*nul terminated json formatted string*/
37 void * ptr; /*arbitrary data in local memory*/
38};
39
40class kspatial_t;
41class CBM_API kmount_t
42{
43 public:
44 kmount_t();
45 kmount_t( kspatial_t *, kernel_t * /*client*/);
46
47 lerr_t enqueue_for_mount( cbm::string_t const & /*kernel name*/,
48 lid_t const & /*id*/, cbm::string_t /*source*/,
49 cbm::kernel_t * /*client*/, cbm::mountargs_t const * /*data*/);
50 lerr_t enqueue_for_umount(
51 cbm::string_t const & /*uri*/, cbm::kernel_t * /*client*/);
52
53 lerr_t resolve_services( cbm::services_t * /*discovered services*/,
54 cbm::entities_t const & /*req. variables*/,
55 cbm::services_t const & /*req. services*/, cbm::kernel_t * /*client*/);
56
57 private:
58 kspatial_t * m_kspatial;
59};
60
61} /* namespace cbm */
62
63#endif /* !CBM_KMOUNT_H_ */
64
The "Service Registry" holds information about available services (e.g., models, readers,...
Definition Lresources.h:51