示例#1
0
void
Window::install_wndproc()
{
  assert(prev_wndproc == NULL);

  set_userdata(this);
  prev_wndproc = set_wndproc(WndProc);
}
示例#2
0
文件: alsa.c 项目: pmyadlowsky/mash
static int new_obj(lua_State *lstate) {
	dev_stop();
	lua_newtable(lstate);
	set_value(lstate, "card");
	set_userdata(lstate, "intern", (void *)&unit);
	add_method(lstate, "capture", capture);
	add_method(lstate, "stop", lua_stop);
	add_fader_methods(lstate);
	return 1;
	}
示例#3
0
文件: feed.c 项目: pmyadlowsky/mash
int flac_feed(lua_State *lstate) {
	lua_newtable(lstate);
	set_value(lstate, "mount");
	set_value(lstate, "port");
	set_value(lstate, "host");
	set_userdata(lstate, "intern", alloc_flac_feed());
	add_method(lstate, "play", play_flac);
	add_method(lstate, "stop", stop_feed);
	add_fader_methods(lstate);
	return 1;
	}
示例#4
0
文件: state.hpp 项目: Nava2/sol
 state& set_userdata(userdata<T>& user) {
     return set_userdata(user.name(), user);
 }
示例#5
0
/**
 * Set extra userdata into the connection.
 *
 * @return previous userdata;
 *
 * @note
 *   Extra userdata is for default protocol handler such as ad_http_handler to
 *   provide higher abstraction. End users should always use only ad_conn_set_userdata()
 *   to avoid any conflict with default handlers.
 */
void *ad_conn_set_extra(ad_conn_t *conn, const void *extra, ad_userdata_free_cb free_cb) {
    return set_userdata(conn, 1, extra, free_cb);
}
示例#6
0
/**
 * Attach userdata into the connection.
 *
 * @return previous userdata;
 */
void *ad_conn_set_userdata(ad_conn_t *conn, const void *userdata, ad_userdata_free_cb free_cb) {
    return set_userdata(conn, 0, userdata, free_cb);
}