X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fport_insert.h;h=5e50b4775e70fd30ad4d3e4d560b2b89d6647ff1;hb=100d7c0f82602f6225537342f6df7dee12479e9d;hp=78ff09124bb5707736f99e6b4112298b2f157e92;hpb=9a3734a6bd0450faf92a8b1add2d5e052a4534ca;p=ardour.git diff --git a/libs/ardour/ardour/port_insert.h b/libs/ardour/ardour/port_insert.h index 78ff09124b..5e50b4775e 100644 --- a/libs/ardour/ardour/port_insert.h +++ b/libs/ardour/ardour/port_insert.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2000,2007 Paul Davis + Copyright (C) 2000,2007 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -24,48 +24,52 @@ #include #include -#include -#include -#include -#include +#include "ardour/ardour.h" +#include "ardour/io_processor.h" +#include "ardour/types.h" class XMLNode; namespace ARDOUR { class Session; +class IO; +class Delivery; +class MuteMaster; /** Port inserts: send output to a Jack port, pick up input at a Jack port */ class PortInsert : public IOProcessor { public: - PortInsert (Session&, Placement); - PortInsert (Session&, const XMLNode&); + PortInsert (Session&, boost::shared_ptr mm); + PortInsert (Session&, boost::shared_ptr mm, const XMLNode&); ~PortInsert (); XMLNode& state(bool full); XMLNode& get_state(void); - int set_state(const XMLNode&); + int set_state (const XMLNode&, int version); - void init (); - - void run_in_place (BufferSet& bufs, nframes_t start_frame, nframes_t end_frame, nframes_t nframes, nframes_t offset); + void run (BufferSet& bufs, sframes_t start_frame, sframes_t end_frame, nframes_t nframes, bool); nframes_t signal_latency() const; - - ChanCount output_streams() const; - ChanCount input_streams() const; + + bool set_name (const std::string& name); bool can_support_io_configuration (const ChanCount& in, ChanCount& out) const; bool configure_io (ChanCount in, ChanCount out); + void activate (); + void deactivate (); + uint32_t bit_slot() const { return bitslot; } private: /* disallow copy construction */ PortInsert (const PortInsert&); - + + boost::shared_ptr _out; + uint32_t bitslot; };