a19f0793aff787af7df0133f9046e60841aef62b
[debian/gnuradio] / mblock / src / lib / mb_runtime_nop.cc
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2007 Free Software Foundation, Inc.
4  * 
5  * This file is part of GNU Radio
6  * 
7  * GNU Radio is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2, or (at your option)
10  * any later version.
11  * 
12  * GNU Radio is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License along
18  * with this program; if not, write to the Free Software Foundation, Inc.,
19  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20  */
21
22 #ifdef HAVE_CONFIG_H
23 #include <config.h>
24 #endif
25 #include <mb_runtime_nop.h>
26 #include <mb_mblock.h>
27
28 mb_runtime_sptr 
29 mb_make_runtime_nop()
30 {
31   return mb_runtime_sptr(new mb_runtime_nop());
32 }
33
34
35 mb_runtime_nop::mb_runtime_nop()
36 {
37   // nop for now
38 }
39
40 mb_runtime_nop::~mb_runtime_nop()
41 {
42   // nop for now
43 }
44
45 bool
46 mb_runtime_nop::run(mb_mblock_sptr top)
47 {
48   class initial_visitor : public mb_visitor
49   {
50   public:
51     bool operator()(mb_mblock *mblock, const std::string &path)
52     {
53       mblock->set_instance_name(path);
54       mblock->init_fsm();
55       return true;
56     }
57   };
58
59   initial_visitor       visitor;
60
61   top->walk_tree(&visitor);
62
63   return true;
64 }