Beispiel #1
0
weibo_manage_t
weibo_manage_create(
    gd_app_context_t app,
    const char * name,
    mem_allocrator_t alloc,
    error_monitor_t em)
{
    weibo_manage_t mgr;
    nm_node_t mgr_node;

    if (name == 0) name = cpe_hs_data((cpe_hash_string_t)&s_weibo_manage_default_name);

    mgr_node = nm_instance_create(gd_app_nm_mgr(app), name, sizeof(struct weibo_manage));
    if (mgr_node == NULL) return NULL;

    mgr = (weibo_manage_t)nm_node_data(mgr_node);
    mgr->m_alloc = alloc;
    mgr->m_app = app;
    mgr->m_em = em;
    mgr->m_debug = 0;

    mgr->m_pages_count = 0;
    mgr->m_pages_capacity = 0;
    mgr->m_pages_by_id = NULL;
    mgr->m_pages_by_time = NULL;

    TAILQ_INIT(&mgr->m_runing_it_list);
    mgr->m_msg_id_page_free_list = NULL;

    mgr->m_persistent = NULL;
    mgr->m_persistent_ctx = NULL;

    nm_node_set_type(mgr_node, &s_nm_node_type_weibo_manage);

    return mgr;
}
Beispiel #2
0
Object::~Object() {
    nm_node_set_type(*this, NULL);
}
Beispiel #3
0
Object::Object() {
    nm_node_set_type(*this, &g_object_type);
}