本文整理汇总了C++中OUT0函数的典型用法代码示例。如果您正苦于以下问题:C++ OUT0函数的具体用法?C++ OUT0怎么用?C++ OUT0使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了OUT0函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: IN0
cam_flash_err_e CFlashSequencer::startSeq(sequenceID_t sequence, CFlashController *pController, flashSeqClbk_t pClbk, flashSeqClbkCtxtHnd_t ctxtHnd) {
IN0("\n");
if (pController == NULL) { // Error: a valid controller handle must be passed.
OUT0("\n");
return CAM_FLASH_ERR_BAD_PARAMETER;
}
if (curSeq != NONE_SEQ) { // A running sequence cannot be interrupted
OUT0("\n");
return CAM_FLASH_ERR_BAD_PRECONDITION;
}
curSeq = sequence;
switch (sequence) {
case NONE_SEQ:
i32_remSteps = 0;
break;
case RED_EYE_REMOVAL_SEQ:
i32_remSteps = sizeof(a_RER_sequence) / sizeof(cam_flashSeq_atom_t);
break;
case PRIVACY_SEQ:
i32_remSteps = sizeof(a_PI_sequence) / sizeof(cam_flashSeq_atom_t);
break;
}
mController = pController;
mpClbk = pClbk;
mctxtHnd = ctxtHnd;
sigTimer(); // To be called after delay by the chosen timing service.
OUT0("\n");
return CAM_FLASH_ERR_NONE;
}
开发者ID:Meticulus,项目名称:vendor_st-ericsson_u8500,代码行数:29,代码来源:flash.cpp
示例2: Dbrown_next
void Dbrown_next(Dbrown *unit, int inNumSamples)
{
if (inNumSamples) {
float lo = DEMANDINPUT_A(1, inNumSamples); if(!sc_isnan(lo)) { unit->m_lo = lo; }
float hi = DEMANDINPUT_A(2, inNumSamples); if(!sc_isnan(hi)) { unit->m_hi = hi; }
float step = DEMANDINPUT_A(3, inNumSamples); if(!sc_isnan(step)) { unit->m_step = step; }
if (unit->m_repeats < 0.) {
float x = DEMANDINPUT_A(0, inNumSamples);
unit->m_repeats = sc_isnan(x) ? 0.f : floor(x + 0.5f);
unit->m_val = unit->mParent->mRGen->frand() * (unit->m_hi - unit->m_lo) + unit->m_lo;
}
if (unit->m_repeatCount >= unit->m_repeats) {
OUT0(0) = NAN;
return;
}
unit->m_repeatCount++;
OUT0(0) = unit->m_val;
float x = unit->m_val + unit->mParent->mRGen->frand2() * unit->m_step;
unit->m_val = sc_fold(x, unit->m_lo, unit->m_hi);
} else {
unit->m_repeats = -1.f;
unit->m_repeatCount = 0;
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:25,代码来源:DemandUGens.cpp
示例3: Dswitch_next
void Dswitch_next(Dswitch *unit, int inNumSamples)
{
int index;
float ival;
if (inNumSamples) {
float val = DEMANDINPUT_A(unit->m_index, inNumSamples);
//printf("index: %i\n", (int) val);
if(sc_isnan(val)) {
ival = DEMANDINPUT_A(0, inNumSamples);
if(sc_isnan(ival)) {
OUT0(0) = ival;
return;
}
index = (int32)floor(ival + 0.5f);
index = sc_wrap(index, 0, unit->mNumInputs - 2) + 1;
val = DEMANDINPUT_A(unit->m_index, inNumSamples);
RESETINPUT(unit->m_index);
// printf("resetting index: %i\n", unit->m_index);
unit->m_index = index;
}
OUT0(0) = val;
} else {
printf("...\n");
for (int i=0; i<unit->mNumInputs; ++i) {
RESETINPUT(i);
}
index = (int32)floor(DEMANDINPUT(0) + 0.5f);
index = sc_wrap(index, 0, unit->mNumInputs - 1) + 1;
unit->m_index = index;
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:35,代码来源:DemandUGens.cpp
示例4: Dstutter_next
void Dstutter_next(Dstutter *unit, int inNumSamples)
{
if (inNumSamples) {
if (unit->m_repeatCount >= unit->m_repeats) {
float val = DEMANDINPUT_A(1, inNumSamples);
float repeats = DEMANDINPUT_A(0, inNumSamples);
if(sc_isnan(repeats) || sc_isnan(val)) {
OUT0(0) = NAN;
return;
} else {
unit->m_value = val;
unit->m_repeats = floor(repeats + 0.5f);
unit->m_repeatCount = 0.f;
}
}
OUT0(0) = unit->m_value;
unit->m_repeatCount++;
} else {
unit->m_repeats = -1.f;
unit->m_repeatCount = 0.f;
RESETINPUT(0);
RESETINPUT(1);
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:31,代码来源:DemandUGens.cpp
示例5: Dibrown_next
void Dibrown_next(Dibrown *unit, int inNumSamples)
{
if (inNumSamples) {
float lo = DEMANDINPUT_A(1, inNumSamples); if(!sc_isnan(lo)) { unit->m_lo = (int32)lo; }
float hi = DEMANDINPUT_A(2, inNumSamples); if(!sc_isnan(hi)) { unit->m_hi = (int32)hi; }
float step = DEMANDINPUT_A(3, inNumSamples); if(!sc_isnan(step)) { unit->m_step = (int32)step; }
if (unit->m_repeats < 0.) {
float x = DEMANDINPUT_A(0, inNumSamples);
unit->m_repeats = sc_isnan(x) ? 0.f : floor(x + 0.5f);
unit->m_val = unit->mParent->mRGen->irand(unit->m_hi - unit->m_lo + 1) + unit->m_lo;
}
if (unit->m_repeatCount >= unit->m_repeats) {
OUT0(0) = NAN;
return;
}
OUT0(0) = unit->m_val;
int32 z = unit->m_val + unit->mParent->mRGen->irand2(unit->m_step);
unit->m_val = sc_fold(z, unit->m_lo, unit->m_hi);
} else {
unit->m_repeats = -1.f;
unit->m_repeatCount = 0;
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:25,代码来源:DemandUGens.cpp
示例6: Dbufrd_next
void Dbufrd_next(Dbufrd *unit, int inNumSamples)
{
int32 loop = (int32)DEMANDINPUT_A(2, inNumSamples);
D_GET_BUF_SHARED
D_CHECK_BUF
double loopMax = (double)(loop ? bufFrames : bufFrames - 1);
double phase;
if (inNumSamples)
{
float x = DEMANDINPUT_A(1, inNumSamples);
if (sc_isnan(x)) {
OUT0(0) = NAN;
return;
}
phase = x;
phase = sc_loop((Unit*)unit, phase, loopMax, loop);
int32 iphase = (int32)phase;
const float* table1 = bufData + iphase * bufChannels;
OUT0(0) = table1[0];
}
else
{
RESETINPUT(1);
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:29,代码来源:DemandUGens.cpp
示例7: Diwhite_next
void Diwhite_next(Diwhite *unit, int inNumSamples)
{
if (inNumSamples) {
float lo = DEMANDINPUT_A(1, inNumSamples);
float hi = DEMANDINPUT_A(2, inNumSamples);
if(!sc_isnan(lo)) { unit->m_lo = (int32)floor(DEMANDINPUT_A(1, inNumSamples) + 0.5f); }
if(!sc_isnan(hi)) {
int32 hi = (int32)floor(DEMANDINPUT_A(2, inNumSamples) + 0.5f);
unit->m_range = hi - unit->m_lo + 1;
}
if (unit->m_repeats < 0.) {
float x = DEMANDINPUT_A(0, inNumSamples);
unit->m_repeats = sc_isnan(x) ? 0.f : floor(x + 0.5f);
}
if (unit->m_repeatCount >= unit->m_repeats) {
OUT0(0) = NAN;
return;
}
unit->m_repeatCount++;
float x = unit->mParent->mRGen->irand(unit->m_range) + unit->m_lo;
OUT0(0) = x;
} else {
unit->m_repeats = -1.f;
unit->m_repeatCount = 0;
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:28,代码来源:DemandUGens.cpp
示例8: DbufTag_end
void DbufTag_end(DbufTag *unit, int which_case, int inNumSamples) {
int recycle = (int) DEMANDINPUT_A(dtag_recycle, inNumSamples);
int mode = (int) IN0(dtag_mode);
if(which_case == 0) {
DbufTag_reset(unit, recycle, inNumSamples);
if(mode == 4) {
printf("tag system was reset externally.\n");
if(recycle) {
printf("recycling. axiom length: %d\n", recycle);
}
}
return;
}
if((mode == 0) || (mode == which_case)) {
if(recycle) {
DbufTag_reset(unit, recycle, inNumSamples);
} else {
OUT0(0) = NAN;
}
return;
}
if(mode >= 4) {
printf("tag system halt: ");
if(which_case == 1) {
printf("divergence too large (buffer filled up).\n");
} else {
printf("terminated (string empty)\n");
}
if(recycle) {
printf("recycling. axiom length: %d\n", recycle);
//printf("new axiom:\n"); // todo.
DbufTag_reset(unit, recycle, inNumSamples);
GET_BUF
printf("new axiom (index %ld..%ld): ", unit->m_read_pos, unit->m_write_pos);
int32 n = unit->m_write_pos - unit->m_read_pos;
if(n < 0) {
n = sc_wrap(n, 0, bufFrames - 1);
}
for(int32 i=0; i < n; i++) {
int32 j = sc_wrap(unit->m_read_pos + i, 0, bufFrames - 1);
printf("%d ", (int)bufData[j]);
}
printf("\n");
} else {
OUT0(0) = NAN;
}
return;
}
OUT0(0) = NAN;
}
开发者ID:noah-rush,项目名称:sc3-plugins,代码行数:57,代码来源:TagSystemUgens.cpp
示例9: MedianSeparation_Ctor
void MedianSeparation_Ctor( MedianSeparation* unit ) {
//fft, fftharmonic, fftpercussive, fftsize, mediansize=17, hardorsoft=0, p=1
//IFFT needs to know what it is operating on
OUT0(0) = ZIN0(1); //-1;
OUT0(1) = ZIN0(2);
unit->fftsize_ = ZIN0(3); //so can set things up in constructor, rather than later on
unit->mediansize_ = ZIN0(4); //default 17, may cause trouble otherwise?
//printf("MedianSeparation starting %d %d \n",unit->fftsize_,unit->mediansize_);
if(unit->mediansize_<3)
unit->mediansize_ = 17;
unit->midpoint_ = unit->mediansize_/2;
unit->fftbins_ = (unit->fftsize_/2) +1; //actually /2 + 1 but polar form has separate packed dc and nyquist
unit->magnitudeposition_= 0;
unit->phaseposition_= 0;
//separate storage
unit->magnitudes_ = (float *) RTAlloc(unit->mWorld, sizeof(float)* unit->mediansize_ * unit->fftbins_);
unit->phases_ = (float *) RTAlloc(unit->mWorld, sizeof(float)* (unit->midpoint_+1) * unit->fftbins_); //only store half data since only need phases for midpoint about to output; this necessitates holding midpoint+1 values (to include just arrived)
//float * data_; //2D grid
//zero out all magnitudes and phases
int i;
for (i=0; i<unit->mediansize_ * unit->fftbins_; ++i)
unit->magnitudes_[i] = 0.0f;
for (i=0; i<(unit->midpoint_+1) * unit->fftbins_; ++i)
unit->phases_[i] = 0.0f;
unit->collection_ = (float *) RTAlloc(unit->mWorld, sizeof(float)* unit->mediansize_); //reusable array for sorting and finding median
unit->horizontalmedians_ = (float *) RTAlloc(unit->mWorld, sizeof(float)* unit->fftbins_);
unit->verticalmedians_ = (float *) RTAlloc(unit->mWorld, sizeof(float)* unit->fftbins_);
//need to go a step at a time over the vertical, horizontal sort and the eventual output (so takes four blocks to calculate, FFT must be at least 256)
unit->amortisationstep_=0;
SETCALC(MedianSeparation_next);
}
开发者ID:mtmccrea,项目名称:sc3-plugins,代码行数:56,代码来源:MedianSeparation.cpp
示例10: Dshuf_next
void Dshuf_next(Dshuf *unit, int inNumSamples)
{
// Print("->Dshuf_next %d\n", inNumSamples);
if (inNumSamples) {
//Print(" unit->m_repeats %d\n", unit->m_repeats);
if (unit->m_repeats < 0.) {
float x = DEMANDINPUT_A(0, inNumSamples);
unit->m_repeats = sc_isnan(x) ? 0.f : floor(x + 0.5f);
}
while (true) {
//Print(" unit->m_index %d unit->m_repeatCount %d\n", unit->m_index, unit->m_repeatCount);
if (unit->m_index >= (unit->mNumInputs - 1)) {
unit->m_index = 0;
unit->m_repeatCount++;
}
if (unit->m_repeatCount >= unit->m_repeats) {
//Print("done\n");
OUT0(0) = NAN;
unit->m_index = 0;
return;
}
if (ISDEMANDINPUT(unit->m_indices[unit->m_index])) {
if (unit->m_needToResetChild) {
unit->m_needToResetChild = false;
RESETINPUT(unit->m_indices[unit->m_index]);
}
float x = DEMANDINPUT_A(unit->m_indices[unit->m_index], inNumSamples);
if (sc_isnan(x)) {
unit->m_index++;
unit->m_needToResetChild = true;
} else {
OUT0(0) = x;
return;
}
} else {
OUT0(0) = DEMANDINPUT_A(unit->m_indices[unit->m_index], inNumSamples);
//Print(" unit->m_index %d OUT0(0) %g\n", unit->m_index, OUT0(0));
unit->m_index++;
unit->m_needToResetChild = true;
return;
}
}
} else {
unit->m_repeats = -1.f;
unit->m_repeatCount = 0;
unit->m_needToResetChild = true;
unit->m_index = 0;
Dshuf_scramble(unit);
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:51,代码来源:DemandUGens.cpp
示例11: Donce_next
void Donce_next(Donce *unit, int inNumSamples)
{
if (inNumSamples) {
if (unit->m_bufcounter == unit->mWorld->mBufCounter) {
OUT0(0) = unit->m_prev;
} else {
float x = DEMANDINPUT_A(0, inNumSamples);
unit->m_prev = x;
OUT0(0) = x;
}
} else {
RESETINPUT(0);
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:14,代码来源:DemandUGens.cpp
示例12: IN0
void OpenMax_Component_ConfigCB::setConfig(t_sint32 index, void * opaque_ptr)
//*************************************************************************************************************
{
IN0("\n");
mOMXProxy->setConfigFromProcessing((OMX_INDEXTYPE)index, (OMX_PTR)opaque_ptr);
OUT0("\n");
}
开发者ID:Meticulus,项目名称:vendor_st-ericsson_u8500,代码行数:7,代码来源:openmax_component_proxy.cpp
示例13: IN0
void openmax_processor::processEvent(void)
//*************************************************************************************************************
{// fsm.component.component.type interface posteven method processEvent
IN0("\n");
Component::processEvent();
OUT0("\n");
}
开发者ID:Meticulus,项目名称:vendor_st-ericsson_u8500,代码行数:7,代码来源:openmax_processor.cpp
示例14: AnnBasic_next
void AnnBasic_next(AnnBasic *unit, int numSamples)
{
unsigned int in_c = sigInCount(unit);
unsigned int out_c = sigOutCount(unit);
AnnDef *def = Ann_GetAnnDef<true>( unit->ann_i, sigInCount(unit), sigOutCount(unit) );
if(!def) {
SETCALC( AnnBasic_idle );
AnnBasic_idle(unit, numSamples);
return;
}
struct fann *ann = def->_ann;
float *in = unit->inputs;
for( int i = 0; i < in_c; ++i )
{
in[i] = IN0(IN_SIG + i);
}
fann_type *out = fann_run( ann, in );
for( int i = 0; i < out_c; ++i )
{
OUT0(i) = out[i];
}
}
开发者ID:jleben,项目名称:supercollider-ann,代码行数:27,代码来源:ugen_basic.cpp
示例15: IN0
OMX_ERRORTYPE MPEG4Enc_ArmNmf_ProcessingComponent::codecConfigure()
{
IN0("");
OUT0("");
return OMX_ErrorNone;
}
开发者ID:Meticulus,项目名称:vendor_st-ericsson_u8500,代码行数:7,代码来源:MPEG4Enc_ArmNmf_ProcessingComponent.cpp
示例16: Demand_Ctor
void Demand_Ctor(Demand *unit)
{
//Print("Demand_Ctor\n");
if (INRATE(0) == calc_FullRate) {
if (INRATE(1) == calc_FullRate) {
SETCALC(Demand_next_aa);
} else {
SETCALC(Demand_next_ak);
}
} else {
if (INRATE(1) == calc_FullRate) {
SETCALC(Demand_next_ka);
} else {
SETCALC(Demand_next_aa);
}
}
unit->m_prevout = (float*) RTAlloc(unit->mWorld, unit->mNumOutputs * sizeof(float));
unit->m_out = (float**) RTAlloc(unit->mWorld, unit->mNumOutputs * sizeof(float*));
//Print("Demand_Ctor calc %08X\n", unit->mCalcFunc);
unit->m_prevtrig = 0.f;
unit->m_prevreset = 0.f;
for (int i=0; i<unit->mNumOutputs; ++i) {
unit->m_prevout[i] = 0.f;
OUT0(i) = 0.f;
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:28,代码来源:DemandUGens.cpp
示例17: Dreset_next
void Dreset_next(Dreset *unit, int inNumSamples)
{
if (inNumSamples) {
float x = DEMANDINPUT_A(0, inNumSamples);
float reset = DEMANDINPUT_A(1, inNumSamples);
if(sc_isnan(x)) {
OUT0(0) = NAN;
return;
}
if(reset > 0.0 && (unit->prev_reset <= 0.0)) { RESETINPUT(0); }
unit->prev_reset = reset;
OUT0(0) = x;
} else {
RESETINPUT(0);
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:16,代码来源:DemandUGens.cpp
示例18: Dxrand_next
void Dxrand_next(Dxrand *unit, int inNumSamples)
{
if (inNumSamples) {
if (unit->m_repeats < 0.) {
float x = DEMANDINPUT_A(0, inNumSamples);
unit->m_repeats = sc_isnan(x) ? 0.f : floor(x + 0.5f);
}
while (true) {
if (unit->m_index >= unit->mNumInputs) {
unit->m_index = 1;
}
if (unit->m_repeatCount >= unit->m_repeats) {
OUT0(0) = NAN;
return;
}
if (ISDEMANDINPUT(unit->m_index)) {
if (unit->m_needToResetChild) {
unit->m_needToResetChild = false;
RESETINPUT(unit->m_index);
}
float x = DEMANDINPUT_A(unit->m_index, inNumSamples);
if (sc_isnan(x)) {
int newindex = unit->mParent->mRGen->irand(unit->mNumInputs - 2) + 1;
unit->m_index = newindex < unit->m_index ? newindex : newindex + 1;
unit->m_repeatCount++;
unit->m_needToResetChild = true;
} else {
OUT0(0) = x;
return;
}
} else {
OUT0(0) = DEMANDINPUT_A(unit->m_index, inNumSamples);
int newindex = unit->mParent->mRGen->irand(unit->mNumInputs - 2) + 1;
unit->m_index = newindex < unit->m_index ? newindex : newindex + 1;
unit->m_repeatCount++;
unit->m_needToResetChild = true;
return;
}
}
} else {
unit->m_repeats = -1.f;
unit->m_repeatCount = 0;
unit->m_needToResetChild = true;
int newindex = unit->mParent->mRGen->irand(unit->mNumInputs - 2) + 1;
unit->m_index = newindex < unit->m_index ? newindex : newindex + 1;
}
}
开发者ID:GaryHomewood,项目名称:supercollider-android-bootstrap,代码行数:47,代码来源:DemandUGens.cpp
示例19: MX_GPIO_Init
void MX_GPIO_Init(void)
{
SET_BIT(RCC->AHBENR, RCC_AHBENR_GPIOAEN | RCC_AHBENR_GPIOBEN | RCC_AHBENR_GPIOFEN);
SET_BIT(RCC->APB2ENR, RCC_APB2ENR_SYSCFGEN);
READ_BIT(RCC->AHBENR, 1); //Delay
OUT1(OneWire_GPIO_Port, ePin::P0);
OUT0(REL2_GPIO_Port, ePin::P0);
OUT0(REL1_GPIO_Port, ePin::P1);
OUT0(P_GPIO_Port, ePin::P6);
/*Configure GPIO pin : OneWire_Pin */
//GPIOF->AFR[0] = GPIOF->AFR[1]=0;
GPIOF->MODER = GPIO_MODER_MODER0_0; //00=Input, 01=Output, 10=AF, 11=Analog
//GPIOF->OSPEEDR=GPIO_SPEED_LOW;
GPIOF->OTYPER=GPIO_OTYPER_OT_0; //0=PuPu, 1=OpenDrain
//GPIOF->PUPDR = GPIO_PUPDR_PUPDR0_0; //00=no, 01=Up, 10=downPullup wird zentral gemacht
SYSCFG->EXTICR[0]=SYSCFG_EXTICR1_EXTI0_PF;
EXTI->IMR=EXTI_IMR_MR0;
EXTI->RTSR=EXTI_RTSR_TR0;
EXTI->FTSR=EXTI_FTSR_TR0;
/*Configure GPIO A*/
GPIOA->MODER=
BMODE(REL2_Pin, ePinMode::OUT) |
BMODE(REL1_Pin, ePinMode::OUT) |
BMODE(ePin::P2, ePinMode::ALT) |
BMODE(ePin::P3, ePinMode::ALT) |
BMODE(IO1_Pin, ePinMode::OUT) |
BMODE(I1_Pin, ePinMode::INP) |
BMODE(P_Pin, ePinMode::OUT) |
BMODE(I2_Pin, ePinMode::INP) |
BMODE(ePin::P9, ePinMode::ALT) |
BMODE(ePin::P10, ePinMode::ALT) |
BMODE(ePin::P13, ePinMode::ALT) |
BMODE(ePin::P14, ePinMode::ALT)
;
GPIOA->PUPDR=0x24000000 | BPULL(I1_Pin, ePull::PULLUP) | BPULL(I2_Pin, ePull::PULLUP);
GPIOB->MODER=BMODE(ePin::P1, ePinMode::INP);
/* EXTI interrupt init*/
HAL_NVIC_SetPriority(EXTI0_1_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(EXTI0_1_IRQn);
}
开发者ID:klaus-liebler,项目名称:sensact,代码行数:46,代码来源:main.cpp
示例20: IN0
EXPORT_C VFM_NmfMpc_ProcessingComponent::~VFM_NmfMpc_ProcessingComponent()
{
IN0("");
if(mPortPoolid){
delete[] mPortPoolid;
}
OUT0("");
}
开发者ID:Meticulus,项目名称:vendor_st-ericsson_u8500,代码行数:8,代码来源:VFM_NmfMpc_ProcessingComponent.cpp
注:本文中的OUT0函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论