Chris's work on the region list
[ardour.git] / gtk2_ardour / imageframe_socket_handler.cc
index c007c02adb50666c67ca30f6ba24a9f70d33c7ef..2838be6f667295fe8885b48e3d0e9576a94c4683 100644 (file)
@@ -15,7 +15,6 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id$
 */
 
 #include <iostream>
 #include "marker_time_axis_view.h"
 #include "ardour_ui.h"
 #include "public_editor.h"
-#include "extra_bind.h"
 #include "gui_thread.h"
 
 #include "i18n.h"
 
-#include <ardour/session.h>
+#include "ardour/session.h"
+#include "ardour/session_utils.h"
 
-#include <gtkmm.h>
 #include <unistd.h>
 
 using namespace std;
 using namespace ardourvis ;
 using namespace sigc;
+using namespace ARDOUR;
+using namespace PBD;
 
 ImageFrameSocketHandler* ImageFrameSocketHandler::_instance = 0 ;
 
@@ -186,7 +186,7 @@ ImageFrameSocketHandler::image_socket_callback(void *arg, int32_t fd, GdkInputCo
  *         false otherwise
  */
 bool
-ImageFrameSocketHandler::connect(std::string hostIp, int32_t port)
+ImageFrameSocketHandler::connect(const char * hostIp, int32_t port)
 {
        if (is_connected())
        {
@@ -206,7 +206,7 @@ ImageFrameSocketHandler::connect(std::string hostIp, int32_t port)
        sockaddr_in m_addr ;
        m_addr.sin_family = AF_INET ;
        m_addr.sin_port = htons(port) ;
-       m_addr.sin_addr.s_addr = inet_addr(hostIp.c_str()) ;
+       m_addr.sin_addr.s_addr = inet_addr(hostIp) ;
        
        int status = ::connect(theArdourToCompositorSocket, (sockaddr *) &m_addr, sizeof(m_addr)) ;
        
@@ -295,7 +295,7 @@ ImageFrameSocketHandler::get_socket_descriptor()
  * @param src the identity of the object that initiated the change
  */
 void
-ImageFrameSocketHandler::send_imageframe_time_axis_removed(std::string track_id, void* src)
+ImageFrameSocketHandler::send_imageframe_time_axis_removed(const string & track_id, void* src)
 {
        if(this == src || src == 0)
        {
@@ -330,9 +330,9 @@ ImageFrameSocketHandler::send_imageframe_time_axis_removed(std::string track_id,
  * @param time_axis the time axis that has changed
  */
 void
-ImageFrameSocketHandler::send_imageframe_time_axis_renamed(std::string new_id, std::string old_id, void* src, ImageFrameTimeAxis* time_axis)
+ImageFrameSocketHandler::send_imageframe_time_axis_renamed(const string & new_id, const string & old_id, void* src, ImageFrameTimeAxis* time_axis)
 {
-       // ENSURE_GUI_THREAD(SigC::bind (slot (*this, &ImageFrameSocketHandler::send_imageframe_time_axis_renamed), new_id, old_id, src, time_axis));
+       // ENSURE_GUI_THREAD(SigC::bind (mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_renamed), new_id, old_id, src, time_axis));
        
        if(this == src || src == 0)
        {
@@ -372,7 +372,7 @@ ImageFrameSocketHandler::send_imageframe_time_axis_renamed(std::string new_id, s
  * @param src the identity of the object that initiated the change
  */
 void
-ImageFrameSocketHandler::send_marker_time_axis_removed(std::string track_id, void* src)
+ImageFrameSocketHandler::send_marker_time_axis_removed(const string & track_id, void* src)
 {
        if(this == src || src == 0)
        {
@@ -407,9 +407,9 @@ ImageFrameSocketHandler::send_marker_time_axis_removed(std::string track_id, voi
  * @param time_axis the time axis that has changed
  */
 void
-ImageFrameSocketHandler::send_marker_time_axis_renamed(std::string new_id, std::string old_id, void* src, MarkerTimeAxis* time_axis)
+ImageFrameSocketHandler::send_marker_time_axis_renamed(const string & new_id, const string & old_id, void* src, MarkerTimeAxis* time_axis)
 {
-       // ENSURE_GUI_THREAD(bind (slot (*this, &ImageFrameSocketHandler::send_marker_time_axis_renamed), new_id, old_id, src, time_axis));
+       // ENSURE_GUI_THREAD(bind (mem_fun(*this, &ImageFrameSocketHandler::send_marker_time_axis_renamed), new_id, old_id, src, time_axis));
        
        if(this == src || src == 0)
        {
@@ -450,7 +450,7 @@ ImageFrameSocketHandler::send_marker_time_axis_renamed(std::string new_id, std::
  * @param group the group that has changed
  */
 void
-ImageFrameSocketHandler::send_imageframe_time_axis_group_removed(std::string group_id, void* src, ImageFrameTimeAxisGroup* group)
+ImageFrameSocketHandler::send_imageframe_time_axis_group_removed(const string & group_id, void* src, ImageFrameTimeAxisGroup* group)
 {
        if(this == src || src == 0)
        {
@@ -490,9 +490,9 @@ ImageFrameSocketHandler::send_imageframe_time_axis_group_removed(std::string gro
  * @param group the group that has changed
  */
 void
-ImageFrameSocketHandler::send_imageframe_time_axis_group_renamed(std::string new_id, std::string old_id, void* src, ImageFrameTimeAxisGroup* group)
+ImageFrameSocketHandler::send_imageframe_time_axis_group_renamed(const string & new_id, const string & old_id, void* src, ImageFrameTimeAxisGroup* group)
 {
-       // ENSURE_GUI_THREAD(bind (slot (*this, &ImageFrameSocketHandler::send_imageframe_time_axis_group_renamed), new_id, old_id, src, group));
+       // ENSURE_GUI_THREAD(bind (mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_group_renamed), new_id, old_id, src, group));
        
        if(this == src || src == 0)
        {
@@ -538,9 +538,9 @@ ImageFrameSocketHandler::send_imageframe_time_axis_group_renamed(std::string new
  * @param item the time axis item whos position has changed
  */
 void
-ImageFrameSocketHandler::send_imageframe_view_position_change(jack_nframes_t pos, void* src, ImageFrameView* item)
+ImageFrameSocketHandler::send_imageframe_view_position_change(nframes_t pos, void* src, ImageFrameView* item)
 {
-       // ENSURE_GUI_THREAD(bind (slot (*this, &ImageFrameSocketHandler::send_imageframe_view_position_change), pos, src, item));
+       // ENSURE_GUI_THREAD(bind (mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_view_position_change), pos, src, item));
        
        if(this == src || src == 0)
        {
@@ -574,9 +574,9 @@ ImageFrameSocketHandler::send_imageframe_view_position_change(jack_nframes_t pos
  * @param item the item which has had a duration change
  */
 void
-ImageFrameSocketHandler::send_imageframe_view_duration_change(jack_nframes_t dur, void* src, ImageFrameView* item)
+ImageFrameSocketHandler::send_imageframe_view_duration_change(nframes_t dur, void* src, ImageFrameView* item)
 {
-       // ENSURE_GUI_THREAD(bind (slot (*this, &ImageFrameSocketHandler::send_imageframe_view_duration_change), dur, src, item));
+       // ENSURE_GUI_THREAD(bind (mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_view_duration_change), dur, src, item));
        
        if(this == src || src == 0)
        {
@@ -609,7 +609,7 @@ ImageFrameSocketHandler::send_imageframe_view_duration_change(jack_nframes_t dur
  * @param item the renamed item
  */
 void
-ImageFrameSocketHandler::send_imageframe_view_renamed(std::string new_id, std::string old_id, void* src, ImageFrameView* item)
+ImageFrameSocketHandler::send_imageframe_view_renamed(const string & new_id, const string & old_id, void* src, ImageFrameView* item)
 {
        if(this == src || src == 0)
        {
@@ -644,7 +644,7 @@ ImageFrameSocketHandler::send_imageframe_view_renamed(std::string new_id, std::s
  * @param item the removed item
  */
 void
-ImageFrameSocketHandler::send_imageframe_view_removed(std::string item_id, void* src, ImageFrameView* item)
+ImageFrameSocketHandler::send_imageframe_view_removed(const string & item_id, void* src, ImageFrameView* item)
 {
        if(this == src || src == 0)
        {
@@ -688,7 +688,7 @@ ImageFrameSocketHandler::send_imageframe_view_removed(std::string item_id, void*
  * @param item the time axis item whos position has changed
  */
 void
-ImageFrameSocketHandler::send_marker_view_position_change(jack_nframes_t pos, void* src, MarkerView* item)
+ImageFrameSocketHandler::send_marker_view_position_change(nframes_t pos, void* src, MarkerView* item)
 {
        if(this == src || src == 0)
        {
@@ -722,7 +722,7 @@ ImageFrameSocketHandler::send_marker_view_position_change(jack_nframes_t pos, vo
  * @param item the time axis item whos position has changed
  */
 void
-ImageFrameSocketHandler::send_marker_view_duration_change(jack_nframes_t dur, void* src, MarkerView* item)
+ImageFrameSocketHandler::send_marker_view_duration_change(nframes_t dur, void* src, MarkerView* item)
 {
        if(this == src || src == 0)
        {
@@ -757,7 +757,7 @@ ImageFrameSocketHandler::send_marker_view_duration_change(jack_nframes_t dur, vo
  * @param item the MarkerView which has been renamed
  */
 void
-ImageFrameSocketHandler::send_marker_view_renamed(std::string new_id, std::string old_id, void* src, MarkerView* item)
+ImageFrameSocketHandler::send_marker_view_renamed(const string & new_id, const string & old_id, void* src, MarkerView* item)
 {
        if(this == src || src == 0)
        {
@@ -793,7 +793,7 @@ ImageFrameSocketHandler::send_marker_view_renamed(std::string new_id, std::strin
  * @param item the MarkerView which has been removed
  */
 void
-ImageFrameSocketHandler::send_marker_view_removed(std::string item_id, void* src, MarkerView* item) 
+ImageFrameSocketHandler::send_marker_view_removed(const string & item_id, void* src, MarkerView* item) 
 {
        if(this == src || src == 0)
        {
@@ -1092,7 +1092,7 @@ ImageFrameSocketHandler::handle_item_selected(const char* msg)
                                }
                                else
                                {
-                                       ifv->set_selected(true, this) ;
+                                       ifv->set_selected(true) ;
                                        ifta->get_view()->set_selected_imageframe_view(iftag, ifv) ;
 
                                        thePublicEditor.scroll_timeaxis_to_imageframe_item(ifv) ;
@@ -1164,8 +1164,8 @@ ImageFrameSocketHandler::handle_insert_imageframe_time_axis(const char* msg)
                if(new_tav)
                {
                        ImageFrameTimeAxis* ifta = (ImageFrameTimeAxis*)new_tav ;
-                       ifta->VisualTimeAxisRemoved.connect(SigC::slot(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_removed)) ;
-                       ifta->NameChanged.connect(SigC::bind(SigC::slot(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_renamed), ifta)) ;
+                       ifta->VisualTimeAxisRemoved.connect(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_removed)) ;
+                       ifta->NameChanged.connect(sigc::bind(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_renamed), ifta)) ;
                        
                        send_return_success() ;
                }
@@ -1230,8 +1230,8 @@ ImageFrameSocketHandler::handle_insert_marker_time_axis(const char* msg)
                                if(mta)
                                {
                                        added = true ;
-                                       mta->VisualTimeAxisRemoved.connect(SigC::slot(*this, &ImageFrameSocketHandler::send_marker_time_axis_removed)) ;
-                                       mta->NameChanged.connect(SigC::bind(SigC::slot(*this, &ImageFrameSocketHandler::send_marker_time_axis_renamed), mta)) ;
+                                       mta->VisualTimeAxisRemoved.connect(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_marker_time_axis_removed)) ;
+                                       mta->NameChanged.connect(sigc::bind(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_marker_time_axis_renamed), mta)) ;
                                }
                        }
                        
@@ -1295,8 +1295,8 @@ ImageFrameSocketHandler::handle_insert_imageframe_group(const char* msg)
        }
        else
        {
-               iftag->NameChanged.connect(SigC::bind(SigC::slot(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_group_renamed), iftag)) ;
-               iftag->GroupRemoved.connect(SigC::bind(SigC::slot(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_group_removed), iftag)) ;
+               iftag->NameChanged.connect(sigc::bind(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_group_renamed), iftag)) ;
+               iftag->GroupRemoved.connect(sigc::bind(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_time_axis_group_removed), iftag)) ;
                send_return_success() ;
        }
 }
@@ -1337,11 +1337,11 @@ ImageFrameSocketHandler::handle_insert_imageframe_view(const char* msg)
        position += image_id_size ;
        
        // get the start frame value
-       jack_nframes_t start = strtoul((get_message_part(position,10,msg).c_str()),0,10) ;
+       nframes_t start = strtoul((get_message_part(position,10,msg).c_str()),0,10) ;
        position += 10 ;
        
        // get the duration value
-       jack_nframes_t duration = strtoul((get_message_part(position,10,msg).c_str()),0,10) ;
+       nframes_t duration = strtoul((get_message_part(position,10,msg).c_str()),0,10) ;
        position += 10 ;
 
        //get the named time axis view we about to add an image to
@@ -1441,9 +1441,9 @@ ImageFrameSocketHandler::handle_insert_imageframe_view(const char* msg)
                ImageFrameView* ifv = iftag->add_imageframe_item(image_id, start, duration, rgb_img_buf, (uint32_t)imgWidth, (uint32_t)imgHeight, (uint32_t)imgChannels, this) ;
                if(ifv)
                {
-                       ifv->PositionChanged.connect(SigC::bind(SigC::slot(*this, &ImageFrameSocketHandler::send_imageframe_view_position_change), ifv)) ;
-                       ifv->DurationChanged.connect(SigC::bind(SigC::slot(*this, &ImageFrameSocketHandler::send_imageframe_view_duration_change), ifv)) ;
-                       ifv->ItemRemoved.connect(SigC::bind(SigC::slot(*this, &ImageFrameSocketHandler::send_imageframe_view_removed), ifv)) ;
+                       ifv->PositionChanged.connect(sigc::bind(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_view_position_change), ifv)) ;
+                       ifv->DurationChanged.connect(sigc::bind(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_view_duration_change), ifv)) ;
+                       ifv->ItemRemoved.connect(sigc::bind(sigc::mem_fun(*this, &ImageFrameSocketHandler::send_imageframe_view_removed), ifv)) ;
                
                        send_return_success() ;
                }
@@ -1673,7 +1673,7 @@ ImageFrameSocketHandler::handle_imageframe_view_position_update(const char* msg)
        
        this->decompose_imageframe_item_desc(msg, position, track_id, track_id_size, scene_id, scene_id_size, item_id, item_id_size) ;
        
-       jack_nframes_t start_frame = strtoul(get_message_part(position, ardourvis::TIME_VALUE_CHARS, msg).c_str(), 0, 10) ;
+       nframes_t start_frame = strtoul(get_message_part(position, ardourvis::TIME_VALUE_CHARS, msg).c_str(), 0, 10) ;
        position += ardourvis::TIME_VALUE_CHARS ;
        
        // get the named time axis
@@ -1725,7 +1725,7 @@ ImageFrameSocketHandler::handle_imageframe_view_duration_update(const char* msg)
        
        this->decompose_imageframe_item_desc(msg, position, track_id, track_id_size, scene_id, scene_id_size, item_id, item_id_size) ;
        
-       jack_nframes_t duration = strtoul(get_message_part(position,ardourvis::TIME_VALUE_CHARS,msg).c_str(),0,10) ;
+       nframes_t duration = strtoul(get_message_part(position,ardourvis::TIME_VALUE_CHARS,msg).c_str(),0,10) ;
        position += ardourvis::TIME_VALUE_CHARS ;
        
        // get the named time axis
@@ -1828,7 +1828,7 @@ ImageFrameSocketHandler::handle_imageframe_view_max_duration_update(const char*
        
        this->decompose_imageframe_item_desc(msg, position, track_id, track_id_size, group_id, group_id_size, item_id, item_id_size) ;
        
-       jack_nframes_t max_duration = strtoul(get_message_part(position,ardourvis::TIME_VALUE_CHARS,msg).c_str(),0,10) ;
+       nframes_t max_duration = strtoul(get_message_part(position,ardourvis::TIME_VALUE_CHARS,msg).c_str(),0,10) ;
        position += ardourvis::TIME_VALUE_CHARS ;
        
        int errcode ;
@@ -1916,7 +1916,7 @@ ImageFrameSocketHandler::handle_imageframe_view_min_duration_update(const char*
        
        this->decompose_imageframe_item_desc(msg, position, track_id, track_id_size, group_id, group_id_size, item_id, item_id_size) ;
        
-       jack_nframes_t min_duration = strtoul(get_message_part(position,ardourvis::TIME_VALUE_CHARS,msg).c_str(),0,10) ;
+       nframes_t min_duration = strtoul(get_message_part(position,ardourvis::TIME_VALUE_CHARS,msg).c_str(),0,10) ;
        position += ardourvis::TIME_VALUE_CHARS ;
        
        int errcode ;
@@ -2063,7 +2063,7 @@ ImageFrameSocketHandler::handle_open_session(const char* msg)
        std::string path, name ;
        bool isnew;
 
-       if (ARDOUR::Session::find_session(session_name, path, name, isnew) == 0) {
+       if (ARDOUR::find_session(session_name, path, name, isnew) == 0) {
                if (ARDOUR_UI::instance()->load_session (path, name) == 0) {
                        send_return_success() ;
                } else {
@@ -2179,7 +2179,7 @@ ImageFrameSocketHandler::decompose_imageframe_item_desc(const char* msg, int& po
  * The description consists of the parent track name size and name,
  * the parent group name size and name, and the item name size and name
  *
- * @param ifv the item to compose a description of
+ * @param ifv the item to string_compose a description of
  * @param buffer the buffer to write the description
  */
 void
@@ -2202,7 +2202,7 @@ ImageFrameSocketHandler::compose_imageframe_item_desc(ImageFrameView* ifv, std::
  * The description consists of the parent track name size and name,
  * and the item name size and name
  *
- * @param mv the item to compose a description of
+ * @param mv the item to string_compose a description of
  * @param buffer the buffer to write the description
  */
 void
@@ -2240,7 +2240,7 @@ ImageFrameSocketHandler::compose_marker_item_desc(MarkerView* mv, std::ostringst
  * @return the described item on success, 0 otherwise
  */
 ImageFrameView*
-ImageFrameSocketHandler::get_imageframe_view_from_desc(const std::string& track_id, const std::string& group_id, const std::string& item_id, int& errcode, std::string& errmsg)
+ImageFrameSocketHandler::get_imageframe_view_from_desc(const string & track_id, const string & group_id, const string & item_id, int& errcode, std::string& errmsg)
 {
        ImageFrameView* item = 0 ;
        
@@ -2295,7 +2295,7 @@ ImageFrameSocketHandler::get_imageframe_view_from_desc(const std::string& track_
  * @return the return value of the socket call
  */
 int
-ImageFrameSocketHandler::send_message(const std::string& msg)
+ImageFrameSocketHandler::send_message(const string & msg)
 {
        //std::cout << "Sending Message [" << msg << "]\n" ;
        int retcode = ::send(theArdourToCompositorSocket, msg.c_str(), msg.length(), MSG_NOSIGNAL) ;
@@ -2326,7 +2326,7 @@ ImageFrameSocketHandler::read_message(std::string& msg)
 
 
 /**
- * Convenience method to compose and send a success messasge back to the Image Compositor
+ * Convenience method to string_compose and send a success messasge back to the Image Compositor
  *
  */
 void
@@ -2336,7 +2336,7 @@ ImageFrameSocketHandler::send_return_success()
 }
 
 /**
- * Convenience method to compose and send a failure messasge back to the Image Compositor
+ * Convenience method to string_compose and send a failure messasge back to the Image Compositor
  *
  * @param msg the failure message
  */