List more dependencies
[yazproxy-moved-to-github.git] / src / msg-thread.h
index 0d0729f..38f5e71 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: msg-thread.h,v 1.1 2005-05-30 20:08:58 adam Exp $
+/* $Id: msg-thread.h,v 1.8 2006-03-29 13:33:47 adam Exp $
    Copyright (c) 1998-2005, Index Data.
 
 This file is part of the yaz-proxy.
@@ -27,13 +27,14 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #include <dlfcn.h>
 #endif
 
-#include <yaz++/socket-observer.h>
+#include <yazpp/socket-observer.h>
 #include <yaz/yconfig.h>
 
 class IMsg_Thread {
 public:
     virtual IMsg_Thread *handle() = 0;
     virtual void result() = 0;
+    virtual ~IMsg_Thread();
 };
 
 class Msg_Thread_Queue_List {
@@ -53,9 +54,9 @@ class Msg_Thread_Queue {
     Msg_Thread_Queue_List *m_list;
 };
 
-class Msg_Thread : public IYazSocketObserver {
+class Msg_Thread : public yazpp_1::ISocketObserver {
  public:
-    Msg_Thread(IYazSocketObservable *obs);
+    Msg_Thread(yazpp_1::ISocketObservable *obs, int no_threads);
     virtual ~Msg_Thread();
     void socketNotify(int event);
     void put(IMsg_Thread *m);
@@ -63,14 +64,22 @@ class Msg_Thread : public IYazSocketObserver {
     void run(void *p);
     int m_fd[2];
 private:
-    IYazSocketObservable *m_SocketObservable;
-    pthread_t m_thread_id;
+    yazpp_1::ISocketObservable *m_SocketObservable;
+    int m_no_threads;
+    pthread_t *m_thread_id;
     Msg_Thread_Queue m_input;
     Msg_Thread_Queue m_output;
     pthread_mutex_t m_mutex_input_data;
     pthread_cond_t m_cond_input_data;
     pthread_mutex_t m_mutex_output_data;
-    pthread_cond_t m_cond_output_data;
     bool m_stop_flag;
 };
 
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+