Logo Search packages:      
Sourcecode: pfstools version File versions  Download package

void pfs::copyTags ( Frame *  from,
Frame *  to 
)

Copy all tags from both the frame and its channels to the destination frame. If there is no corresponding destination channel for a source channel, the tags from that source channel will not be copied. Note, that all tags in the destination channel will be removed before copying. Therefore after this operation, the destination will contain exactly the same tags as the source.

Definition at line 229 of file pfs.cpp.

References copyTags(), pfs::Frame::getChannel(), pfs::Frame::getChannels(), pfs::Channel::getName(), pfs::ChannelIterator::getNext(), pfs::Channel::getTags(), and pfs::Frame::getTags().

{
  copyTags( from->getTags(), to->getTags() );
  pfs::ChannelIterator *it = from->getChannels();
  while( it->hasNext() ) {
    pfs::Channel *fromCh = it->getNext();
    pfs::Channel *toCh = to->getChannel( fromCh->getName() );
    if( toCh == NULL ) // Skip if there is no corresponding channel
      continue;
    copyTags( fromCh->getTags(), toCh->getTags() );
  }  
  
}


Generated by  Doxygen 1.6.0   Back to index