• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ sequence函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中sequence函数的典型用法代码示例。如果您正苦于以下问题:C++ sequence函数的具体用法?C++ sequence怎么用?C++ sequence使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



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

示例1: THREAD_ASSERT

/** read /nframes/ from the attached track into /buf/ */
void
Playback_DS::read_block ( sample_t *buf, nframes_t nframes )
{
    THREAD_ASSERT( Playback );

    memset( buf, 0, nframes * sizeof( sample_t ) * channels() );

    /* stupid chicken/egg */
    if ( ! timeline )
        return;

//    printf( "IO: attempting to read block @ %lu\n", _frame );

    if ( ! sequence() )
    {
        /* FIXME: what to do here? */
//        _frame += _nframes;
        return;
    }

    timeline->rdlock();

    /* FIXME: how does this work if _delay is not a multiple of bufsize? */

    if ( _frame >= _delay )
    {
        if ( ! sequence()->play( buf, _frame - _delay, nframes, channels() ) )
            WARNING( "Programming error?" );
    }

    _frame += nframes;

    timeline->unlock();
}
开发者ID:elthariel,项目名称:non-daw,代码行数:35,代码来源:Playback_DS.C


示例2: THREAD_ASSERT

/** read /nframes/ from the attached track into /buf/ */
void
Playback_DS::read_block ( sample_t *buf, nframes_t nframes )
{
    THREAD_ASSERT( Playback );

    memset( buf, 0, nframes * sizeof( sample_t ) * channels() );

//    printf( "IO: attempting to read block @ %lu\n", _frame );

    if ( !timeline )
        return;

    while ( timeline->sequence_lock.tryrdlock() )
    {
        if ( _terminate )
            return;
        
        usleep( 1000 * 10 );
    }
    
    if ( sequence() )
    {
        if ( ! sequence()->play( buf, _frame + _undelay, nframes, channels() ) )
            WARNING( "Programming error?" );
        
        _frame += nframes;
    }
    
    timeline->sequence_lock.unlock();
}
开发者ID:harryhaaren,项目名称:non,代码行数:31,代码来源:Playback_DS.C


示例3: main

int main()
{
    for (auto i : sequence(-5, +5))
    {
        std::cout << i << " ";
    }
    
    std::cout << std::endl << std::endl;

    for (auto i : sequence(+5, -5, -1))
    {
        std::cout << i << " ";
    }
    
    std::cout << std::endl << std::endl;
    
    std::vector<int> v{1, 2, 3, 4, 5, 6};
    
    for (auto i : sequence(0, v.size()))
    {
        std::cout << "Element " << i  << ": " << v[i] << std::endl;
    }
    
    std::cout << std::endl;
    
    for (auto i : sequence(0, v.size(), 2))
    {
        std::cout << "Element " << i  << ": " << v[i] << std::endl;
    }

}
开发者ID:CCJY,项目名称:coliru,代码行数:31,代码来源:main.cpp


示例4: context

QNFA* context(const QString& start, const QString& stop, const QString&, int action, QNFA **handler, bool cs)
{
	QNFA *nfa, *end, *beg = sequence(start.constData(), start.length(), &end, cs);
	
	nfa = new QNFA;
	nfa->type = ContextBegin;
	nfa->actionid = action;
	nfa->out.branch = new QNFABranch;
	
	if ( handler )
		*handler = nfa;
	//else
	//	qDebug("no handler set [0x%x]", nfa);
	
	end->out.next = nfa;
	end = nfa;
	
	QNFA *endmark, *begendmark = sequence(stop.constData(), stop.length(), &endmark, cs);
	
	nfa = new QNFA;
	nfa->type = ContextEnd;
	nfa->actionid = action;
	
	endmark->out.next = nfa;
	
	//end->out->branch->append(endmark);
	addNFA(end, begendmark);
	
	return beg;
}
开发者ID:dennisscully,项目名称:Cheezy,代码行数:30,代码来源:qnfa.cpp


示例5: sequence

int Line::GetSeg(double y) {
	for(unsigned i = 0; i < size() - 1; i += degree)
		if(sequence(double(at(i).y),y,double(at(i+degree).y)) ||
				sequence(double(at(i+degree).y),y,double(at(i).y)))
			return i;
	return -1;
}
开发者ID:frankier,项目名称:Dynagraph,代码行数:7,代码来源:Line.cpp


示例6: DMESSAGE

void
Track::sequence ( Audio_Sequence * t )
{
    if ( sequence() == t )
    {
        DMESSAGE( "Attempt to set sequence twice" );
        return;
    }

    t->track( this );

    if ( sequence() )
        add( sequence() );

    _sequence = t;
    /* insert following the annotation pack */
    pack->insert( *t, 1 );

    /* hide the take header */
    t->child(0)->hide();

    t->color( FL_GRAY );
    t->labeltype( FL_NO_LABEL );

    adjust_size();
}
开发者ID:shanipribadi,项目名称:non,代码行数:26,代码来源:Track.C


示例7: assert

    void NameParser::Item::calc_padding (size_t maxval)
    {
      for (size_t i = 0; i < sequence().size(); i++) {
        assert (sequence() [i] >= 0);
        if (maxval < (size_t) sequence() [i]) maxval = sequence() [i];
      }

      seq_length = 1;
      for (size_t num = 10; maxval >= num; num *= 10)
        seq_length += 1;
    }
开发者ID:JohnWangDataAnalyst,项目名称:mrtrix3,代码行数:11,代码来源:name_parser.cpp


示例8: test

void test() {
    try {
        throw;
    } catch (xa& a) {
	sequence( 0, __LINE__ );
    } catch (xb& b) {
	sequence( 1, __LINE__ );
    } catch (...) {
	sequence( 2, __LINE__ );
    }
}
开发者ID:ABratovic,项目名称:open-watcom-v2,代码行数:11,代码来源:except20.c


示例9: sequence

int sequence(int n, int length) {
    length++;
    if (n==1) {
        return length;
    }
    if (n%2==0) {
        return sequence(n/2, length);
    } else {
        return sequence(n*3+1, length);
    }
}
开发者ID:acasaccia,项目名称:the-algorithm-design-manual,代码行数:11,代码来源:collatz.cpp


示例10: main

int main( int argc, char* argv [ ] )
{
   // In order to compile this, you need C ++ 11. If it doesn't compile, then
   // you can replace it by a sequence of push_backs.

   sequence seq({   rotation( cube::left ),
                    rotation( cube::left, 1, 3 ),
                    rotation( cube::up ),
                    rotation( cube::left, -1, 3 ),
                    rotation( cube::up, -1, 1 ),
                    rotation( cube::left, -1, 1 ),
                    rotation( cube::up, 1, 1 ),
                    rotation( cube::left, 1, 3 ),
                    rotation( cube::up, -1, 1 ),
                    rotation( cube::left, -1, 3 ) });

   std::cout << seq << "\n";
   std::cout << repeat( seq, 5 ) << "\n";

   sequence corners = repeat( sequence( { { cube::right },
                                          { cube::down, -1 },
                                          { cube::right, -1 },
                                          { cube::down } } ), 2 ) *
                         sequence( { rotation( cube::up ) } ) *
                      repeat( sequence( { { cube::down, -1 },
                                          { cube::right },
                                          { cube::down },
                                          { cube::right, -1 } } ), 2 ) *
                        sequence( { rotation( cube::up, -1 ) } );
   std::cout << corners << "\n";

   cube c(4);

   // Open an SFML window. Switch it on, if you want to use
   // graphics.

   // sf::Window
   //       wind( sf::VideoMode( 1024, 500, 32 ), "Rubik Cube" );

   char q = ' ';
   while( q != 'q' )
   {
      std::cout << c << "\n";
      // plot(c);
      // wind. Display( );
      // Plotting is nicer of course, but you need graphics.

      c. rotate( corners );
      q = getchar( );
   }

   return 0;
}
开发者ID:scoiatael,项目名称:ThingsIdidAtII,代码行数:53,代码来源:rubik.cpp


示例11: sequenceStr

    void SequenceComponent::render(QPaintDevice * target, const QPoint & targetOffset, const QRect & sourceRect)
    {
        if (sequence())
        {
            QString sequenceStr(sequence()->toString());
            QRect rect(sourceRect.left(), 0, sourceRect.width(), this->height());
            QPainter painter(target);
            painter.translate(targetOffset);
            painter.translate(-rect.topLeft());
            painter.setClipRect(rect);

            // Find cell sizes
            double unitSize = alignmentView()->unitSizeF();
            int firstUnit = alignmentIndexAt(rect.topLeft());
            int lastUnit = alignmentIndexAt(rect.topRight());
            if (lastUnit >= sequenceStr.size()) { lastUnit = sequenceStr.size() - 1; }
            int unitLeft = rectAt(firstUnit).left();

            painter.save();
            if (unitSize < 1)
            {
                painter.setRenderHint(QPainter::SmoothPixmapTransform);
            }
            painter.scale(unitSize, (double) height());
            painter.drawPixmap(0, 0, d->background);
            painter.restore();

            if (unitSize > 8)
            {
                // Set font to be a little smaller than usual
                painter.setPen(Qt::NoPen);

                QFont font = painter.font();
                font.setPixelSize((int) (unitSize * 0.6));
                painter.setFont(font);
                painter.setPen(Qt::NoPen);

                for (int res = firstUnit; res <= lastUnit && res < sequenceStr.size(); ++res)
                {
                    QColor col = Qt::red;
                    painter.drawPixmap(unitLeft, 0, d->pixmapFactory().pixmap(sequenceStr[res], (int) unitSize, col));

                    // Skip to next position
                    unitLeft += unitSize;
                }
            }
        }
    }
开发者ID:project-renard-survey,项目名称:utopia-documents-mirror,代码行数:48,代码来源:sequencecomponent.cpp


示例12: sequence

Track::~Track ( )
{
    Loggable::block_start();

    /* must destroy sequences first to preserve proper log order */
    takes->clear();
    control->clear();
    annotation->clear();
    delete sequence();

    takes = NULL;
    control = NULL;
    annotation = NULL;

    log_destroy();

    /* ensure that soloing accounting is performed */
    solo( false );

    timeline->remove_track( this );

    /* give up our ports */
    configure_inputs( 0 );
    configure_outputs( 0 );

    _sequence = NULL;

    if ( _name )
        free( _name );

    Loggable::block_end();
}
开发者ID:shanipribadi,项目名称:non,代码行数:32,代码来源:Track.C


示例13: _log

int
Cursor_Region::handle ( int m )
{
    Logger _log( this );

    if ( m == FL_PUSH )
    {
        if ( test_press( FL_BUTTON3 ) )
        {
            char *s = fl_text_edit( "Cursor text:", "&Save", label() );

            if ( s )
                label( s );

            free( s );

            return 0;
        }
    }

    int r = Sequence_Region::handle( m );

    if ( m == FL_RELEASE )
    {
        sequence()->sort();
        timeline->redraw();
    }

    return r;
}
开发者ID:imv,项目名称:non,代码行数:30,代码来源:Cursor_Region.C


示例14: sequence

/*
* Decode a BER encoded DistinguishedName
*/
void X509_DN::decode_from(BER_Decoder& source)
   {
   MemoryVector<byte> bits;

   source.start_cons(SEQUENCE)
      .raw_bytes(bits)
   .end_cons();

   BER_Decoder sequence(bits);

   while(sequence.more_items())
      {
      BER_Decoder rdn = sequence.start_cons(SET);

      while(rdn.more_items())
         {
         OID oid;
         ASN1_String str;

         rdn.start_cons(SEQUENCE)
            .decode(oid)
            .decode(str)
            .verify_end()
        .end_cons();

         add_attribute(oid, str.value());
         }
      }

   dn_bits = bits;
   }
开发者ID:BenjaminSchiborr,项目名称:safe,代码行数:34,代码来源:x509_dn.cpp


示例15: ACE_GUARD_RETURN

bool
TransportSendBuffer::resend(const SequenceRange& range)
{
  ACE_GUARD_RETURN( TransportSendStrategy::LockType,
                    guard,
                    this->strategy_->lock_,
                    false);

  for (SequenceNumber sequence(range.first);
       sequence <= range.second; ++sequence) {
    // Re-send requested sample if still buffered; missing samples
    // will be scored against the given DisjointSequence:
    BufferMap::iterator it(this->buffers_.find(sequence));
    if (it != this->buffers_.end()) {
      if (OpenDDS::DCPS::Transport_debug_level >= 4) {
        ACE_DEBUG((LM_DEBUG,
                   ACE_TEXT("(%P|%t) TransportSendBuffer::resend() - ")
                   ACE_TEXT("resending PDU: 0x%x, (0x%x,0x%x)\n"),
                   sequence.getValue(),
                   it->second.first,
                   it->second.second));
      }
      resend(it->second);
    }
  }

  // Have we resent all requested data?
  return range.first >= low() && range.second <= high();
}
开发者ID:svn2github,项目名称:OpenDDS,代码行数:29,代码来源:TransportSendBuffer.cpp


示例16: _T

typename RangeT::size_type List< RangeT, TraitsT, ContainerT >::erase(const RangeT& value)
{
	if ( value.end() > limit() )
	{
//		throw ListException( value, limit() );
		CString msg;
		msg.Format( _T( "ListError - erase - size: %u - limit: %I64u - sum: %I64u - " )
			_T( "Range - begin: %I64i - end: %I64u" ),
			size(), limit(), Traits::length_sum(), value.begin(), value.end() );
		theApp.Message( MSG_ERROR, msg );
		return 0;
	}
	if ( value.size() == 0 ) return 0;
	iterator_pair sequence( equal_range( value ) );
	if ( sequence.first == sequence.second ) return 0;
	const range_type front( min( sequence.first->begin(), value.begin() ),
		value.begin(), value.value() );
	const range_type back( value.end(),
		max( ( --sequence.second )->end(), value.end() ), value.value() );
	range_size_type sum = 0;
	for ( ++sequence.second; sequence.first != sequence.second; ) sum += erase( sequence.first++ );
	sum -= insert( sequence.second, front );
	sum -= insert( sequence.second, back );
	return sum;
}
开发者ID:ivan386,项目名称:Shareaza,代码行数:25,代码来源:List.hpp


示例17: BOOST_ASSERT

    sequence<BidiIter> &operator |=(sequence<BidiIter> that)
    {
        BOOST_ASSERT(!this->empty());
        BOOST_ASSERT(0 != this->alternates_);

        // Keep track of width and purity
        if(this->alternates_->empty())
        {
            this->width_ = that.width_;
            this->pure_ = that.pure_;
        }
        else
        {
            this->width_ |= that.width_;
            this->pure_ = this->pure_ && that.pure_;
        }

        // through the wonders of reference counting, all alternates_ can share an end_alternate
        if(!this->alt_end_xpr_)
        {
            this->alt_end_xpr_ = new alt_end_xpr_type;
        }

        // terminate each alternate with an alternate_end_matcher
        that += sequence(this->alt_end_xpr_);
        this->alternates_->push_back(that.head_);
        this->set_quant_();
        return *this;
    }
开发者ID:03050903,项目名称:turbulenz_engine,代码行数:29,代码来源:sequence.hpp


示例18: if

void Animator::play(const std::string& sequenceName, bool bLoop, bool bForce)
{
	m_bFinished = false;

	const AnimationSequence* oldSeq = m_sequence;
	m_sequence = &sequence(sequenceName);

	m_curSequenceName = sequenceName;

	if (m_sequence->duration == 0)
	{
		m_bFinished = true;
		m_bPlay = false;
		m_frame = 0;
	}
	else if (m_sequence != oldSeq || bForce)
	{
		m_frame = 0;
		m_scale = 1;
		m_bPlay = true;
		onFrame(frame());
	}

	m_bLoop = bLoop;
}
开发者ID:dlbeswick,项目名称:dlbeswick-examples,代码行数:25,代码来源:TextureAnimator.cpp


示例19: trim_right

/** split region at absolute frame /where/. due to inheritance issues,
 * the copy must be made in the derived classed and passed in */
void
Sequence_Region::split ( Sequence_Region * copy, nframes_t where )
{
    trim_right( where );
    copy->trim_left( where );
    sequence()->add( copy );
}
开发者ID:imv,项目名称:non,代码行数:9,代码来源:Sequence_Region.C


示例20: main

int main(void) {
	int num[10] = { 0 };
	int times;
	printf("請輸入數字個數:");
	scanf("%d", &times);
	for (int i = 1; i <= times; i++) {
		printf("請輸入數字:");
		scanf("%d", &num[i - 1]);
	}
	sequence(num, times);
	dumparray(num, times);

	for (int i = 1; i < times; i++) {
		if (i == 1) {
			perm(num, i, times, times);
		}
		else {
			while (num[i - 1] == num[0]) {
				i++;
			}
			perm(num, i, times, times);
		}
	}

}
开发者ID:ArnoldHou,项目名称:CPP,代码行数:25,代码来源:Source.cpp



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ ser函数代码示例发布时间:2022-05-30
下一篇:
C++ seqcount_init函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap