14.10 ORBメンバー関数
ORBメンバー関数は、オブジェクト・リクエスト・ブローカのプログラミング・インタフェースです。
ORBメンバー関数のC++へのマッピングは次のとおりです:
class CORBA
{
class ORB
{
public:
char *object_to_string(Object_ptr);
Object_ptr string_to_object(const char *);
void create_list(Long, NVList_out);
void create_operation_list(operationDef_ptr, NVList_out);
void create_named_value(NamedValue_out);
void create_exception_list(ExceptionList_out);
void create_context_list(ContextList_out);
void get_default_context(Context_out);
void create_environment(Environment_out);
void send_multiple_requests_oneway(const requestSeq&);
void send_multiple_requests_deferred(const requestSeq&);
Boolean poll_next_response();
void get_next_response(Request_out);
Boolean work_pending();
void perform_work();
void create_policy (in PolicyType type, in any val);
// Extension
void destroy();
// Extensions to support sharing context between threads
void Ctx get_ctx() = 0;
void set_ctx(Ctx) = 0;
void clear_ctx() = 0;
// Thread extensions
void inform_thread_exit(TID) = 0;
}; //ORB
}; // CORBAスレッド関連の操作:
シングル・スレッドORB、およびマルチスレッド非対応のコードを実行するマルチスレッドORBをサポートするために、2つの操作(perform_workとwork_pending)がORBインタフェースに含まれています。これらの操作は、シングル・スレッド・アプリケーションでもマルチスレッド・アプリケーションでも使用できます。アプリケーションが純粋なORBクライアントの場合は、これらの操作は不要です。
マルチスレッド・サーバー・アプリケーションをサポートするために、get_ctx、set_ctx、clear_ctx、およびinform_thread_exitの4つの操作がORBインタフェースの拡張として含まれています。
次の項では、ORBの各メンバー関数について説明します。
- CORBA::ORB::clear_ctx
- CORBA::ORB::create_context_list
- CORBA::ORB::create_environment
- CORBA::ORB::create_exception_list
- CORBA::ORB::create_list
- CORBA::ORB::create_named_value
- CORBA::ORB::create_operation_list
- CORBA::ORB::create_policy
- CORBA::ORB::destroy
- CORBA::ORB::get_ctx
- CORBA::ORB::get_default_context
- CORBA::ORB::get_next_response
- CORBA::ORB::inform_thread_exit
- CORBA::ORB::list_initial_services
- CORBA::ORB::object_to_string
- CORBA::ORB::perform_work
- CORBA::ORB::poll_next_response
- CORBA::ORB::resolve_initial_references
- CORBA::ORB::send_multiple_requests_deferred
- CORBA::ORB::send_multiple_requests_oneway
- CORBA::ORB::set_ctx
- CORBA::ORB::string_to_object
- CORBA::ORB::work_pending
親トピック: CORBA API