本文整理汇总了C++中d_print函数的典型用法代码示例。如果您正苦于以下问题:C++ d_print函数的具体用法?C++ d_print怎么用?C++ d_print使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了d_print函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: collector_reset
void
collector_reset (Collector *collector)
{
/* Disable the counters so that we won't track
* the activity of tracker_free()/tracker_new()
*
* They will still record fork/mmap/etc. so
* we can keep an accurate log of process creation
*/
if (collector->counters)
{
d_print ("disable counters\n");
disable_counters (collector);
}
if (collector->tracker)
{
tracker_free (collector->tracker);
collector->tracker = tracker_new ();
}
collector->n_samples = 0;
collector->prev_samples = 0;
g_get_current_time (&collector->latest_reset);
if (collector->counters)
{
d_print ("enable counters\n");
enable_counters (collector);
}
}
示例2: task_wait
int task_wait(task_t *task, int ntasks, unsigned long *timeout)
{
int status;
task_list_t *list;
char name[32];
int threadReturnValue;
memset(name,0,sizeof(char)*8);
slink_foreach(list, TaskList)
{
//d_print("\t\t\t m[%x] [%x] [%x]",list->name,list->task,*task,task);
if(list->task==task)
{
strcpy(name,list->name);
//d_print("\t\t\t name=%s",list->name);
break;
}
}
d_print("\t\t\t remove list=%s",list->name);
slink_remove(TaskList, list);
d_print("\t\t\t free list=%s",list->name);
free(list);
SDL_WaitThread( task, &threadReturnValue);
if(name)
d_print("\t\t\t task_wait [%s][%x] ",name,threadReturnValue);
return 0;
}
示例3: snd_mixer_selem_id_malloc
static snd_mixer_elem_t *find_mixer_elem_by_name(const char *goal_name)
{
snd_mixer_elem_t *elem;
snd_mixer_selem_id_t *sid = NULL;
snd_mixer_selem_id_malloc(&sid);
for (elem = snd_mixer_first_elem(alsa_mixer_handle); elem;
elem = snd_mixer_elem_next(elem)) {
const char *name;
snd_mixer_selem_get_id(elem, sid);
name = snd_mixer_selem_id_get_name(sid);
d_print("name = %s\n", name);
d_print("has playback volume = %d\n", snd_mixer_selem_has_playback_volume(elem));
d_print("has playback switch = %d\n", snd_mixer_selem_has_playback_switch(elem));
if (strcasecmp(name, goal_name) == 0) {
if (!snd_mixer_selem_has_playback_volume(elem)) {
d_print("mixer element `%s' does not have playback volume\n", name);
elem = NULL;
}
break;
}
}
snd_mixer_selem_id_free(sid);
return elem;
}
示例4: handleTime
void handleTime(char * gpgga)
{
char *argv[7];
uint8_t argc = parseNMEA(gpgga, argv, 7);
if(argc < 5)
return;
argv[0][4] = 0;
gpsMinute = t_atoi(&argv[0][2]);
argv[0][2] = 0;
gpsHour = t_atoi(argv[0]);
static uint8_t flag = 0;
if(flag)
GPIO_ResetBits(GPIOC, GPIO_Pin_9);
else
GPIO_SetBits(GPIOC, GPIO_Pin_9);
flag = !flag;
d_print(gpsHour);
t_print(":");
d_print(gpsMinute);
t_print("\n");
}
示例5: player_init
void player_init(const struct player_callbacks *callbacks)
{
int rc;
#ifdef REALTIME_SCHEDULING
pthread_attr_t attr;
#endif
pthread_attr_t *attrp = NULL;
/* This mutex is locked inside of the mpris implementation which is
* called into from many different places. It is not trivial to see if
* those places do already hold this lock and so the mpris functions
* always acquires it. To avoid deadlocks in the places where the lock
* is already held by the calling context, we use a recursive mutex.
*/
cmus_mutex_init_recursive(&player_info.mutex);
/* 1 s is 176400 B (0.168 MB)
* 10 s is 1.68 MB
*/
buffer_nr_chunks = 10 * 44100 * 16 / 8 * 2 / CHUNK_SIZE;
buffer_init();
player_cbs = callbacks;
#ifdef REALTIME_SCHEDULING
rc = pthread_attr_init(&attr);
BUG_ON(rc);
rc = pthread_attr_setschedpolicy(&attr, SCHED_RR);
if (rc) {
d_print("could not set real-time scheduling priority: %s\n", strerror(rc));
} else {
struct sched_param param;
d_print("using real-time scheduling\n");
param.sched_priority = sched_get_priority_max(SCHED_RR);
d_print("setting priority to %d\n", param.sched_priority);
rc = pthread_attr_setschedparam(&attr, ¶m);
BUG_ON(rc);
attrp = &attr;
}
#endif
rc = pthread_create(&producer_thread, NULL, producer_loop, NULL);
BUG_ON(rc);
rc = pthread_create(&consumer_thread, attrp, consumer_loop, NULL);
if (rc && attrp) {
d_print("could not create thread using real-time scheduling: %s\n", strerror(rc));
rc = pthread_create(&consumer_thread, NULL, consumer_loop, NULL);
}
BUG_ON(rc);
/* update player_info.cont etc. */
player_lock();
_player_status_changed();
player_unlock();
}
示例6: file_changed
static inline void file_changed(struct track_info *ti)
{
player_info_lock();
if (ti) {
d_print("file: %s\n", ti->filename);
} else {
d_print("unloaded\n");
}
__file_changed(ti);
player_info_unlock();
}
示例7: op_jack_open
static int op_jack_open(sample_format_t sf, const channel_position_t *cm)
{
sample_format = sf;
if (fail) {
/* jack went away so lets see if we can recover */
if (client != NULL) {
op_jack_exit();
}
if (op_jack_init() != OP_ERROR_SUCCESS) {
return -OP_ERROR_INTERNAL;
}
}
if (cm == NULL) {
d_print("no channel_map\n");
return -OP_ERROR_NOT_SUPPORTED;
}
channel_map = cm;
#ifdef HAVE_SAMPLERATE
op_jack_reset_src();
resample_ratio = (float) jack_sample_rate / (float) sf_get_rate(sf);
#else
if (jack_sample_rate != sf_get_rate(sf)) {
d_print("jack sample rate of %d does not match %d\n", jack_get_sample_rate(client), sf_get_rate(sf));
return -OP_ERROR_SAMPLE_FORMAT;
}
#endif
if (sf_get_channels(sf) < CHANNELS) {
d_print("%d channels not supported\n", sf_get_channels(sf));
return -OP_ERROR_SAMPLE_FORMAT;
}
int bits = sf_get_bits(sf);
if (bits == 16) {
sample_bytes = 2;
read_sample = sf_get_signed(sf) ? &read_sample_le16 : &read_sample_le16u;
} else if (bits == 24) {
sample_bytes = 3;
read_sample = sf_get_signed(sf) ? &read_sample_le24 : &read_sample_le24u;
} else if (bits == 32) {
sample_bytes = 4;
read_sample = sf_get_signed(sf) ? &read_sample_le32 : &read_sample_le32u;
} else {
d_print("%d bits not supported\n", sf_get_bits(sf));
return -OP_ERROR_SAMPLE_FORMAT;
}
paused = false;
return OP_ERROR_SUCCESS;
}
示例8: sun_device_exists
static int sun_device_exists(const char *dev)
{
struct stat s;
if (stat(dev, &s) == 0) {
d_print("device %s exists\n", dev);
return 1;
}
d_print("device %s does not exist\n", dev);
return 0;
}
示例9: update_rg_scale
static void update_rg_scale(void)
{
double gain, peak, db, scale, limit;
replaygain_scale = 1.0;
if (!player_info.ti || !replaygain)
return;
if (replaygain == RG_TRACK || replaygain == RG_TRACK_PREFERRED) {
gain = player_info.ti->rg_track_gain;
peak = player_info.ti->rg_track_peak;
} else {
gain = player_info.ti->rg_album_gain;
peak = player_info.ti->rg_album_peak;
}
if (isnan(gain)) {
if (replaygain == RG_TRACK_PREFERRED) {
gain = player_info.ti->rg_album_gain;
peak = player_info.ti->rg_album_peak;
} else if (replaygain == RG_ALBUM_PREFERRED) {
gain = player_info.ti->rg_track_gain;
peak = player_info.ti->rg_track_peak;
}
}
if (isnan(gain)) {
d_print("gain not available\n");
return;
}
if (isnan(peak)) {
d_print("peak not available, defaulting to 1\n");
peak = 1;
}
if (peak < 0.05) {
d_print("peak (%g) is too small\n", peak);
return;
}
db = replaygain_preamp + gain;
scale = pow(10.0, db / 20.0);
replaygain_scale = scale;
limit = 1.0 / peak;
if (replaygain_limit && !isnan(peak)) {
if (replaygain_scale > limit)
replaygain_scale = limit;
}
d_print("gain = %f, peak = %f, db = %f, scale = %f, limit = %f, replaygain_scale = %f\n",
gain, peak, db, scale, limit, replaygain_scale);
}
示例10: player_set_op
/*
* change output plugin without stopping playback
*/
void player_set_op(const char *name)
{
int rc;
player_lock();
/* drop needed because close drains the buffer */
if (consumer_status == CS_PAUSED)
op_drop();
if (consumer_status == CS_PLAYING || consumer_status == CS_PAUSED)
op_close();
if (name) {
d_print("setting op to '%s'\n", name);
rc = op_select(name);
} else {
/* first initialized plugin */
d_print("selecting first initialized op\n");
rc = op_select_any();
}
if (rc) {
__consumer_status_update(CS_STOPPED);
__producer_stop();
if (name)
player_op_error(rc, "selecting output plugin '%s'", name);
else
player_op_error(rc, "selecting any output plugin");
player_unlock();
return;
}
if (consumer_status == CS_PLAYING || consumer_status == CS_PAUSED) {
set_buffer_sf();
rc = op_open(buffer_sf, buffer_channel_map);
if (rc) {
__consumer_status_update(CS_STOPPED);
__producer_stop();
player_op_error(rc, "opening audio device");
player_unlock();
return;
}
if (consumer_status == CS_PAUSED)
op_pause();
}
player_unlock();
}
示例11: player_init
void player_init(const struct player_callbacks *callbacks)
{
int rc;
#ifdef REALTIME_SCHEDULING
pthread_attr_t attr;
#endif
pthread_attr_t *attrp = NULL;
/* 1 s is 176400 B (0.168 MB)
* 10 s is 1.68 MB
*/
buffer_nr_chunks = 10 * 44100 * 16 / 8 * 2 / CHUNK_SIZE;
buffer_init();
player_cbs = callbacks;
#ifdef REALTIME_SCHEDULING
rc = pthread_attr_init(&attr);
BUG_ON(rc);
rc = pthread_attr_setschedpolicy(&attr, SCHED_RR);
if (rc) {
d_print("could not set real-time scheduling priority: %s\n", strerror(rc));
} else {
struct sched_param param;
d_print("using real-time scheduling\n");
param.sched_priority = sched_get_priority_max(SCHED_RR);
d_print("setting priority to %d\n", param.sched_priority);
rc = pthread_attr_setschedparam(&attr, ¶m);
BUG_ON(rc);
attrp = &attr;
}
#endif
rc = pthread_create(&producer_thread, NULL, producer_loop, NULL);
BUG_ON(rc);
rc = pthread_create(&consumer_thread, attrp, consumer_loop, NULL);
if (rc && attrp) {
d_print("could not create thread using real-time scheduling: %s\n", strerror(rc));
rc = pthread_create(&consumer_thread, NULL, consumer_loop, NULL);
}
BUG_ON(rc);
/* update player_info.cont etc. */
player_lock();
__player_status_changed();
player_unlock();
}
示例12: op_jack_set_option
static int op_jack_set_option(int key, const char *val)
{
switch (key) {
case CFG_SERVER_NAME:
free(server_name);
server_name = val[0] != '\0' ? xstrdup(val) : NULL;
break;
#ifdef HAVE_SAMPLERATE
case CFG_RESAMPLING_QUALITY:
if (strlen(val) != 1) {
return -OP_ERROR_NOT_SUPPORTED;
}
switch (val[0]) {
default:
case '2':
src_quality = SRC_SINC_BEST_QUALITY;
break;
case '1':
src_quality = SRC_SINC_MEDIUM_QUALITY;
break;
case '0':
src_quality = SRC_SINC_FASTEST;
break;
}
break;
#endif
default:
d_print("unknown key %d = %s\n", key, val);
return -OP_ERROR_NOT_OPTION;
}
return OP_ERROR_SUCCESS;
}
示例13: cmus_exit
void cmus_exit(void)
{
worker_remove_jobs(JOB_TYPE_ANY);
worker_exit();
if (cache_close())
d_print("error: %s\n", strerror(errno));
}
示例14: network_set_neuron_number
int network_set_neuron_number(network *nn, unsigned long nr)
{
int i;
if (!nn || !nr)
return -1;
if (nr == nn->num_of_neurons) /* do nothing... */
return 0;
if (nn->neurons)
/* free the previous array if any */
free(nn->neurons);
nn->neurons = (neuron *)malloc(sizeof(neuron) * nr);
if (!nn->neurons) {
printf("No memory available to allocate the neurons array!\n");
exit(-1);
}
memset(nn->neurons, 0, sizeof(neuron) * nr);
nn->num_of_neurons = nr;
for (i = 0; i < nr; ++i) {
nn->neurons[i].global_id = i; /* set the global is once */
nn->neurons[i].output = 0.0;
}
d_print("neurons array allocated: size for %d elements\n", nr);
return 0;
}
示例15: process_exit
static void
process_exit (Collector *collector, exit_event_t *exit)
{
d_print ("for %d %d", exit->pid, exit->tid);
tracker_add_exit (collector->tracker, exit->pid);
}