32 #include <boost/shared_ptr.hpp> 33 #include <boost/enable_shared_from_this.hpp> 34 #include <boost/noncopyable.hpp> 35 #include <boost/serialization/split_member.hpp> 36 #include <boost/thread.hpp> 55 boost::noncopyable,
public boost::enable_shared_from_this<plasm>
78 connect(
cell_ptr from,
const std::string& output,
cell_ptr to,
const std::string& input);
89 disconnect(
cell_ptr from,
const std::string& output,
cell_ptr to,
const std::string& input);
95 viz(std::ostream& out)
const;
126 std::size_t size()
const;
132 std::vector<cell_ptr> cells()
const;
137 void configure_all();
142 void deactivate_all();
146 void save(std::ostream&)
const;
147 void load(std::istream&);
149 typedef boost::shared_ptr<plasm>
ptr;
150 typedef boost::shared_ptr<plasm const>
cptr;
154 boost::shared_ptr<impl>
impl_;
157 template<
class Archive>
159 save(Archive & ar,
const unsigned int)
const;
161 template<
class Archive>
163 load(Archive & ar,
const unsigned int);
164 friend class boost::serialization::access;
165 BOOST_SERIALIZATION_SPLIT_MEMBER();
void save(Archive &ar, const boost::shared_ptr< ecto::cell > &cell_, const unsigned int file_version)
Definition: cell.hpp:41
The plasm helps construct the graph structure in ecto. It enforces several invariants that are necess...
Definition: plasm.hpp:54
boost::shared_ptr< plasm > ptr
Definition: plasm.hpp:149
void load(Archive &ar, boost::shared_ptr< ecto::cell > &cell_, const unsigned int file_version)
Definition: cell.hpp:52
#define ECTO_EXPORT
Definition: util.hpp:49
boost::shared_ptr< cell > cell_ptr
Definition: forward.hpp:42
Definition: parameters.hpp:11
bool configured
Definition: plasm.hpp:155
boost::shared_ptr< impl > impl_
Definition: plasm.hpp:153
boost::shared_ptr< plasm const > cptr
Definition: plasm.hpp:150