]> rtime.felk.cvut.cz Git - frescor/forb.git/blobdiff - src/forb-internal.h
forb: Add support for synchronized initialization of multiple servers
[frescor/forb.git] / src / forb-internal.h
index 77f3f50028b3361bfe8b8c74e7f4428b066e5da8..a513d93b38b421dd87648d3a9a4a89256dcdb74e 100644 (file)
@@ -66,7 +66,7 @@
 #include <forb.h>
 #include <string.h>
 #include <forb/server_id.h>
-
+#include <semaphore.h>
 
 /**
  * Temporary directory for FORB's housekeeping.
@@ -89,6 +89,8 @@ typedef struct forb {
 
        forb_init_attr_t attr;  /**< Initialization attributes */
 
+       sem_t server_ready;     /**< Synchronize starting of multiple servers in a single address space. */
+
        fosa_mutex_t request_id_mutex;  /**< Mutex for request_id */
        CORBA_long request_id;  /**< Value of next sent request_id */
 
@@ -123,4 +125,7 @@ typedef void (*forb_skel_func)(FORB_CDR_Codec *cin,
 int
 forb_init_tmp_dir(void);
 
+int
+forb_wait_for_server_ready(forb_orb orb);
+
 #endif