progressDialog::progressDialog(QWidget *parent, Qt::WFlags flags) : QMainWindow(parent, flags){ ui.setupUi(this); Consumer *c = new Consumer(); Producer *p = new Producer(); Thread *t1 = new Thread(0); Thread *t2 = new Thread(0); connect(this,SIGNAL(begin(bool)),c,SLOT(startReceiving(bool))); connect(c,SIGNAL(initiate(bool)),p,SLOT(produce(bool))); connect(p,SIGNAL(sendPacket(const QByteArray,bool)),c,SLOT(receiveFrame(const QByteArray,bool))); connect(ui.pushButton,SIGNAL(clicked(bool)),this,SLOT(_begin(bool))); connect(p,SIGNAL(halt(bool)),c,SLOT(startReceiving(bool))); connect(c,SIGNAL(blockDone()),p,SLOT(frameData())); connect(c,SIGNAL(measure(bool)),p,SLOT(measurement(bool)),Qt::DirectConnection); connect(c,SIGNAL(openDialog()),this,SLOT(startDlg())); connect(c,SIGNAL(closeDialog()),this,SLOT(closeDlg())); connect(p,SIGNAL(setDlgMax(int)),this,SLOT(setMaxVal(int))); connect(p,SIGNAL(setDlgVal(int)),this,SLOT(setVal(int))); connect(p,SIGNAL(setSeconds(int)),this,SLOT(setSecondsRemaining(int))); c->moveToThread(t1); p->moveToThread(t2); t1->start(); t2->start(); }
void Grammar::outputFiles( void ) { Producer *producer = LanguageDriver::getProducer( myLanguage, mySettings, myOutputDir, getName(), mySourceFile ); if ( producer ) { std::string arg, prefix; producer->setDebugOutput( isDebugOutput() ); if ( producer->writeSource() ) { if ( ! producer->writeHeader() ) Error::get()->add( "Unable to write the output header file." ); } else Error::get()->add( "Unable to write the output source file." ); delete producer; } }
int main (int argc, char** argv) { print_highlight ("PCL OpenNI Recorder for saving buffered PCD (binary compressed to disk). See %s -h for options.\n", argv[0]); int buff_size = BUFFER_SIZE; if (find_switch (argc, argv, "-h") || find_switch (argc, argv, "--help")) { print_info ("Options are: \n" " -xyz = save only XYZ data, even if the device is RGB capable\n" " -shift = use OpenNI shift values rather than 12-bit depth\n" " -buf X = use a buffer size of X frames (default: "); print_value ("%d", buff_size); print_info (")\n"); return (0); } bool just_xyz = find_switch (argc, argv, "-xyz"); openni_wrapper::OpenNIDevice::DepthMode depth_mode = openni_wrapper::OpenNIDevice::OpenNI_12_bit_depth; if (find_switch (argc, argv, "-shift")) depth_mode = openni_wrapper::OpenNIDevice::OpenNI_shift_values; if (parse_argument (argc, argv, "-buf", buff_size) != -1) print_highlight ("Setting buffer size to %d frames.\n", buff_size); else print_highlight ("Using default buffer size of %d frames.\n", buff_size); print_highlight ("Starting the producer and consumer threads... Press Cltr+C to end\n"); OpenNIGrabber grabber (""); if (grabber.providesCallback<OpenNIGrabber::sig_cb_openni_point_cloud_rgba> () && !just_xyz) { print_highlight ("PointXYZRGBA enabled.\n"); PCDBuffer<PointXYZRGBA> buf; buf.setCapacity (buff_size); Producer<PointXYZRGBA> producer (buf, depth_mode); boost::this_thread::sleep (boost::posix_time::seconds (2)); Consumer<PointXYZRGBA> consumer (buf); signal (SIGINT, ctrlC); producer.stop (); consumer.stop (); } else { print_highlight ("PointXYZ enabled.\n"); PCDBuffer<PointXYZ> buf; buf.setCapacity (buff_size); Producer<PointXYZ> producer (buf, depth_mode); boost::this_thread::sleep (boost::posix_time::seconds (2)); Consumer<PointXYZ> consumer (buf); signal (SIGINT, ctrlC); producer.stop (); consumer.stop (); } return (0); }
void tst_QSemaphore::producerConsumer() { Producer producer; Consumer consumer; producer.start(); consumer.start(); producer.wait(); consumer.wait(); }
void Controller::copyFilters(Producer& fromProducer, Producer& toProducer) { int count = fromProducer.filter_count(); for (int i = 0; i < count; i++) { QScopedPointer<Mlt::Filter> filter(fromProducer.filter(i)); if (filter && filter->is_valid() && !filter->get_int("_loader")) { toProducer.attach(*filter); } } }
int main(int argc, char * argv[]) { Consumer* consumer = new Consumer; Producer* producer = new Producer(consumer); producer->open(0); consumer->open(0); //Wait for all the tasks to exit. ACE_Thread_Manager::instance()->wait(); return 0; }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); Producer producer; producer.registerCallBack(callBackFunction); producer.start(); producer.wait(); }
int main() { try { Producer producer; producer.listen(); } catch(std::exception &e) { std::cerr << "ERROR: " << e.what() << std::endl; } return 0; }
unsigned DatabaseCodec::importGames(Producer& producer, Progress& progress, int startIndex) { //M_REQUIRE(isOpen()); mstl::auto_ptr<Consumer> consumer(getConsumer(producer.format())); //M_ASSERT(consumer); producer.setConsumer(consumer.get()); producer.consumer().setIndex(startIndex); return producer.process(progress); }
//! [5] int main(int argc, char *argv[]) //! [5] //! [6] { QCoreApplication app(argc, argv); Producer producer; Consumer consumer; producer.start(); consumer.start(); producer.wait(); consumer.wait(); return 0; }
int main() { usedSpace += BufferSize; Producer producer; Consumer consumer; producer.start(); consumer.start(); producer.wait(); consumer.wait(); return 0; }
int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); Producer producer; Consumer consumer; producer.start(); consumer.start(); producer.wait(); consumer.wait(); return a.exec(); }
Producer::Producer( Producer &producer ) : Mlt::Service( producer ), instance( producer.get_producer( ) ), parent_( NULL ) { inc_ref( ); }
// Listing 4 code/ch14 int ACE_TMAIN (int, ACE_TCHAR *[]) { int shared_buf[Q_SIZE]; SafeUInt in = 0; SafeUInt out = 0; Producer producer (shared_buf, in, out); Consumer consumer (shared_buf, in, out); producer.activate(); consumer.activate(); producer.wait(); consumer.wait(); return 0; }
int main(int argc, char *argv[]) { //QApplication app(argc, argv); //Window *w = new Window; //w->resize(300, 300); //w->show(); //return app.exec(); QApplication app(argc, argv); Producer produer; Consumer consumer; produer.start(); consumer.start(); produer.wait(); consumer.wait(); return app.exec(); }
int main(int argc, char *argv[]) { Producer ProducerVar; ProducerVar.DeclareUserOptions(); if (int nRet = Options::Instance().ReadWithCommandLine(&argc, &argv)) return nRet; if (int nRet = ProducerVar.GetUserOptions()) return nRet; std::cerr << "Current settings are as follows:\n" << Options::Instance().PrintValues() << "\nPid is " << getpid() << ".\n"; return 0; }
// Listing 1 // Listing 3 code/ch14 int ACE_TMAIN (int, ACE_TCHAR *[]) { ACE_Semaphore psem (5); ACE_Semaphore csem (0); Consumer consumer (psem, csem); Producer producer (psem, csem, consumer); producer.activate (); consumer.activate (THR_NEW_LWP | THR_JOINABLE, Consumer::N_THREADS); producer.wait (); consumer.wait (); return 0; }
int main() { ProducerConsumerMonitor monitor; Producer producer = Producer(&monitor); producer.start(); Consumer consumer = Consumer(&monitor); consumer.start(); Consumer anotherConsumer = Consumer(&monitor); anotherConsumer.start(); producer.waitFor(); consumer.waitFor(); anotherConsumer.waitFor(); }
int main (int argc, char** argv) { print_highlight ("PCL OpenNI Recorder for saving buffered PCD (binary compressed to disk). See %s -h for options.\n", argv[0]); std::string device_id (""); int buff_size = BUFFER_SIZE; openni_wrapper::OpenNIDriver& driver = openni_wrapper::OpenNIDriver::getInstance (); if (driver.getNumberDevices () > 0) { cout << "Device Id not set, using first device." << endl; } bool just_xyz = find_switch (argc, argv, "-xyz"); openni_wrapper::OpenNIDevice::DepthMode depth_mode = openni_wrapper::OpenNIDevice::OpenNI_12_bit_depth; if (find_switch (argc, argv, "-shift")) depth_mode = openni_wrapper::OpenNIDevice::OpenNI_shift_values; if (parse_argument (argc, argv, "-buf", buff_size) != -1) print_highlight ("Setting buffer size to %d frames.\n", buff_size); else print_highlight ("Using default buffer size of %d frames.\n", buff_size); print_highlight ("Starting the producer and consumer threads... Press 's' to capture and 'q' to quit\n"); OpenNIGrabber grabber (device_id); if (grabber.providesCallback<OpenNIGrabber::sig_cb_openni_point_cloud_rgba> () && !just_xyz) { print_highlight ("PointXYZRGBA enabled.\n"); PCDBuffer<PointXYZRGBA> buf; buf.setCapacity (buff_size); Producer<PointXYZRGBA> producer (buf, depth_mode); // boost::this_thread::sleep (boost::posix_time::seconds (2)); string prefix = "frame"; pcl::console::parse_argument (argc, argv, "-name", prefix); Consumer<PointXYZRGBA> consumer (buf, prefix); // consumer.pcd_nb() = 0; producer.stop (); consumer.stop (); } return (0); }
unsigned DatabaseCodec::produce(Producer& producer, Consumer& consumer, util::Progress& progress) { //M_REQUIRE(producer.hasConsumer()); //M_REQUIRE(producer.consumer().consumer() == 0); producer.consumer().setConsumer(&consumer); return importGames(producer, progress); }
bool Tractor::locate_cut( Producer *producer, int &track, int &cut ) { bool found = false; for ( track = 0; producer != NULL && !found && track < count( ); track ++ ) { Playlist playlist( ( mlt_playlist )mlt_tractor_get_track( get_tractor( ), track ) ); for ( cut = 0; !found && cut < playlist.count( ); cut ++ ) { Producer *clip = playlist.get_clip( cut ); found = producer->get_producer( ) == clip->get_producer( ); delete clip; } } track --; cut --; return found; }
int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); initaldatabase();//初始化数据库 QSqlDatabase::removeDatabase("first"); Producer producer; producer.start(); SqlwriteThread_buffer *threadvector[THREADNUM]; for(int i=0; i< THREADNUM; ++i) { threadvector[i] = new SqlwriteThread_buffer("localhost","whztest","root","infonet313",i); // threadvector[i]->SetRange(1024*10); } QTime t; t.start(); for(int i=0; i< THREADNUM; ++i) { threadvector[i]->start(); } QTime blankspace; blankspace.start(); for(int i=0; i< THREADNUM; ++i) { qDebug()<<QObject::trUtf8("第 %1 个线程和第 %2 个线程之间等待耗时:%3 ms").arg(i).arg(i+1).arg(blankspace.elapsed()); threadvector[i]->wait(); blankspace.restart(); } producer.wait(); qDebug()<<QObject::trUtf8("插入 %1 条记录,耗时:%2 ms").arg(1024*100).arg(t.elapsed()); exit(0); return a.exec(); }
int main (int argc, char *argv[]) { NovaInit::init (); /// Producer p; Consumer c; printf ("Main: starting producer\n"); p.begin (); NovaTime::sleep (1); printf ("Main: starting consumer\n"); c.begin (); printf ("Type a key and ret to quit\n"); char d; scanf ("%c", &d); p.end (); c.end (); NovaInit::fini (); return 0; }
bool Controller::openXML(const QString &filename) { bool error = true; close(); Producer* producer = new Mlt::Producer(profile(), "xml", filename.toUtf8().constData()); if (producer->is_valid()) { double fps = profile().fps(); if (!profile().is_explicit()) { profile().from_producer(*producer); profile().set_width(alignWidth(profile().width())); } if (profile().fps() != fps) { // reopen with the correct fps delete producer; producer = new Mlt::Producer(profile(), "xml", filename.toUtf8().constData()); } producer->set(kShotcutVirtualClip, 1); producer->set("resource", filename.toUtf8().constData()); setProducer(new Producer(producer)); error = false; } delete producer; return error; }
QImage Controller::image(Producer& producer, int frameNumber, int width, int height) { QImage result; if (frameNumber > producer.get_length() - 3) { producer.seek(frameNumber - 2); Mlt::Frame* frame = producer.get_frame(); result = image(frame, width, height); delete frame; frame = producer.get_frame(); result = image(frame, width, height); delete frame; frame = producer.get_frame(); result = image(frame, width, height); delete frame; } else { producer.seek(frameNumber); Mlt::Frame* frame = producer.get_frame(); result = image(frame, width, height); delete frame; } return result; }
int main(int argc, char** argv) { // char consumer_reg[100]; int i=0; int flag_prod=0; int flag_cons=0; int check_flag=0; for(i=0;i<argc;i++) { if((strcmp(argv[i],"-p")==0)) check_flag++; if((strcmp(argv[i],"-d")==0)) check_flag++; } if(check_flag==1){ for(i=1;i<argc;i++) { if((strcmp(argv[i],"-p")==0)) { printf("In Producer\n"); i=i+1; flag_prod=1; break; } if((strcmp(argv[i],"-d")==0)) { printf("In Consumer\n"); i=i+1; flag_cons=1; break; } } if(flag_prod==1) { int j=0; number_of_prod_files=argc-i; for(j=0;j<number_of_prod_files;j++) { strcpy(producer_reg[j],argv[i]); ++i; } printf("Files in the Producer are as below\n"); for(j=0;j<number_of_prod_files;j++) { printf("%s\n",producer_reg[j]); } Producer p; p.start(); flag_prod=0; } else if(flag_cons==1) { int j=0; char string_to_send[800]; number_of_cons_files=argc-i; for(j=0;j<number_of_cons_files;j++) { memset(&string_to_send,0,sizeof(string_to_send)); strcat(string_to_send,argv[i]); strcat(string_to_send,"/$"); strcpy(consumer_reg[j],string_to_send); ++i; } printf("Files in the Consumer are as below\n"); for(j=0;j<number_of_cons_files;j++) { printf("%s\n",consumer_reg[j]); } Consumer c; c.start_c(); flag_cons=0; } } else if(check_flag==2) { int p_index=0; int d_index=0; for(i=1;i<argc;i++) { if((strcmp(argv[i],"-p")==0)) p_index=i; if((strcmp(argv[i],"-d")==0)) d_index=i; if(p_index!=0 && d_index!=0) break; } if(p_index<d_index && p_index!=0) { i=0; int j=0; for(j=p_index+1;j<d_index;j++) { strcpy(producer_reg[i],argv[j]); ++i; } number_of_prod_files=i; printf("Files in the Producer are as below\n"); for(j=0;j<number_of_prod_files;j++) { printf("%s\n",producer_reg[j]); } i=0; char string_to_send[800]; for(j=d_index+1;j<argc;j++) { memset(&string_to_send,0,sizeof(string_to_send)); strcat(string_to_send,argv[j]); strcat(string_to_send,"/$"); strcpy(consumer_reg[i],string_to_send); i++; } number_of_cons_files=i; printf("Files in the Consumer are as below\n"); for(j=0;j<number_of_cons_files;j++) { printf("%s\n",consumer_reg[j]); } } if(d_index<p_index && d_index!=0) { int j=0; i=0; char string_to_send[800]; for(j=d_index+1;j<p_index;j++) { memset(&string_to_send,0,sizeof(string_to_send)); strcat(string_to_send,argv[j]); strcat(string_to_send,"/$"); strcpy(consumer_reg[i],string_to_send); i++; } number_of_cons_files=i; printf("Files in the Consumer are as below\n"); for(j=0;j<number_of_cons_files;j++) { printf("%s\n",consumer_reg[j]); } i=0; for(j=p_index+1;j<argc;j++) { strcpy(producer_reg[i],argv[j]); ++i; } number_of_prod_files=i; printf("Files in the Producer are as below\n"); for(j=0;j<number_of_prod_files;j++) { printf("%s\n",producer_reg[j]); } } int j=0; for(j=0;j<number_of_prod_files;j++) { for(i=0;i<number_of_cons_files;i++) { char checking[1000]; memset(&checking,0,sizeof(checking)); strcpy(checking,producer_reg[j]); strcat(checking,"/$"); if((strcmp(checking,consumer_reg[i]))==0) { printf("Sincgle node cannot request the file it already has......Exiting the program\n"); exit(0); } } } pid_t pid=fork(); if(pid==0) { Producer p; p.start(); } else if(pid>0) { Consumer c; c.start_c(); } } else { printf("Wrong inputs entered..... Exiting"); exit(0); } }
int Playlist::insert_at( int position, Producer &producer, int mode ) { return mlt_playlist_insert_at( get_playlist( ), position, producer.get_producer( ), mode ); }
int Playlist::insert( Producer &producer, int where, int in, int out ) { return mlt_playlist_insert( get_playlist( ), producer.get_producer( ), where, in, out ); }
int Playlist::append( Producer &producer, int in, int out ) { return mlt_playlist_append_io( get_playlist( ), producer.get_producer( ), in, out ); }
static void test() { Producer thread; thread.start(); }