当前位置: 首页>>代码示例>>C++>>正文


C++ Signal::notify_all方法代码示例

本文整理汇总了C++中Signal::notify_all方法的典型用法代码示例。如果您正苦于以下问题:C++ Signal::notify_all方法的具体用法?C++ Signal::notify_all怎么用?C++ Signal::notify_all使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Signal的用法示例。


在下文中一共展示了Signal::notify_all方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: callback_received

// called after we've received a sample
static void callback_received() {
    const uint8_t *pos = read_buf;
    sample.num++;
    sample.field[0] = pos[0] << 8 | pos[1]; pos += 2;
    sample.field[2] = pos[0] << 8 | pos[1]; pos += 2; // sensor goes X, Z, Y according to documentation
    sample.field[1] = pos[0] << 8 | pos[1];
    signal.notify_all();

    i2c_async_send(addr, read_cmd, sizeof(read_cmd), i2c_shared_done_unlock);
}
开发者ID:matthewbot,项目名称:FlamewheelFC,代码行数:11,代码来源:mag.cpp

示例2: callback_received

// called when data is received
static void callback_received() {
    int val = (read_buf[0] << 8) | read_buf[1];

    if (state == State::TEMP) {
        temp = val;
        i2c_async_send(addr, cmd_conv_pressure, sizeof(cmd_conv_pressure), i2c_shared_done_unlock);
        state = State::PRESSURE;
    } else {
        sample.ut = temp;
        sample.up = val;
        signal.notify_all();
        i2c_async_send(addr, cmd_conv_temp, sizeof(cmd_conv_temp), i2c_shared_done_unlock);
        state = State::TEMP;
    }
}
开发者ID:matthewbot,项目名称:FlamewheelFC,代码行数:16,代码来源:alt.cpp

示例3: ss

// called when receiver DMA completes its transfer
extern "C" void irq_dma2_stream0() {
    ss(false);

    sample.num++;
    const uint8_t *pos = read_buf+1; // skip over the command byte
    for (int i=0; i<3; i++) // parse all values into sample structure
        sample.accel[i] = next16(pos);
    sample.temp = next16(pos);
    for (int i=0; i<3; i++)
        sample.gyro[i] = next16(pos);

    signal.notify_all(); // notify all tasks waiting
    DMA2->LIFCR = DMA_LIFCR_CTCIF0 | DMA_LIFCR_CHTIF0 | DMA_LIFCR_CTCIF3 | DMA_LIFCR_CHTIF3; // clear status bits
    util_enable_irq(EXTI0_IRQn + PIN_INT); // enable INT interrupt
}
开发者ID:matthewbot,项目名称:FlamewheelFC,代码行数:16,代码来源:mpu.cpp


注:本文中的Signal::notify_all方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。