#include <loadbalance.h>
Inherited by AffineEngine, AgingServer, BlendEngine, BlurZoomServer, BrightnessEngine, BurnServer, ChromaKeyServer, ChromaKeyServer, DiffKeyEngine, DotServer, DownSampleServer, FadeEngine, FrameWriter, GammaEngine, GlyphEngine, GradientServer, HistogramEngine, HistogramEngine, HoloServer, HueEngine, InterpolatePixelsEngine, IVTCEngine, LinearBlurEngine, MaskEngine, MotionBlurEngine, MotionScan, OilServer, PolarEngine, RadialBlurEngine, RotateScan, ScaleEngine, ScaleTranslateEngine, ThresholdEngine, TimeFrontServer, TitleEngine, TitleTranslate, TranslateEngine, UnsharpEngine, VideoScopeEngine, WaveServer, WhirlEngine, and ZoomBlurEngine.

Public Member Functions | |
| LoadServer (int total_clients, int total_packages) | |
| virtual | ~LoadServer () |
| virtual void | init_packages () |
| virtual LoadClient * | new_client () |
| virtual LoadPackage * | new_package () |
| void | process_packages () |
| void | process_single () |
| int | get_total_packages () |
| int | get_total_clients () |
| LoadPackage * | get_package (int number) |
| LoadClient * | get_client (int number) |
| void | set_package_count (int total_packages) |
| void | delete_clients () |
| void | create_clients () |
| void | delete_packages () |
| void | create_packages () |
Private Attributes | |
| int | current_package |
| LoadPackage ** | packages |
| int | total_packages |
| LoadClient ** | clients |
| LoadClient * | single_client |
| int | total_clients |
| int | is_single |
| Mutex * | client_lock |
Friends | |
| class | LoadClient |
Definition at line 57 of file loadbalance.h.
| LoadServer::LoadServer | ( | int | total_clients, | |
| int | total_packages | |||
| ) |
Definition at line 115 of file loadbalance.C.
References client_lock, clients, current_package, is_single, packages, and single_client.
| LoadServer::~LoadServer | ( | ) | [virtual] |
Definition at line 129 of file loadbalance.C.
References client_lock, delete_clients(), and delete_packages().

| virtual void LoadServer::init_packages | ( | ) | [inline, virtual] |
Reimplemented in FadeEngine, FrameWriter, MaskEngine, ScaleEngine, TranslateEngine, ScaleTranslateEngine, BlendEngine, AgingServer, BlurZoomServer, BrightnessEngine, BurnServer, ChromaKeyServer, ChromaKeyServer, DiffKeyEngine, DotServer, DownSampleServer, GammaEngine, GradientServer, HistogramEngine, HoloServer, HueEngine, InterpolatePixelsEngine, IVTCEngine, LinearBlurEngine, AffineEngine, MotionScan, RotateScan, MotionBlurEngine, OilServer, PolarEngine, RadialBlurEngine, HistogramEngine, ThresholdEngine, TimeFrontServer, GlyphEngine, TitleEngine, TitleTranslate, UnsharpEngine, VideoScopeEngine, WaveServer, WhirlEngine, and ZoomBlurEngine.
Definition at line 66 of file loadbalance.h.
Referenced by process_packages(), and process_single().
| virtual LoadClient* LoadServer::new_client | ( | ) | [inline, virtual] |
Reimplemented in FadeEngine, FrameWriter, MaskEngine, ScaleEngine, TranslateEngine, ScaleTranslateEngine, BlendEngine, AgingServer, BlurZoomServer, BrightnessEngine, BurnServer, ChromaKeyServer, ChromaKeyServer, DiffKeyEngine, DotServer, DownSampleServer, GammaEngine, GradientServer, HistogramEngine, HoloServer, HueEngine, InterpolatePixelsEngine, IVTCEngine, LinearBlurEngine, AffineEngine, MotionScan, RotateScan, MotionBlurEngine, OilServer, PolarEngine, RadialBlurEngine, HistogramEngine, ThresholdEngine, TimeFrontServer, GlyphEngine, TitleEngine, TitleTranslate, UnsharpEngine, VideoScopeEngine, WaveServer, WhirlEngine, and ZoomBlurEngine.
Definition at line 67 of file loadbalance.h.
Referenced by create_clients().
| virtual LoadPackage* LoadServer::new_package | ( | ) | [inline, virtual] |
Reimplemented in FadeEngine, FrameWriter, MaskEngine, ScaleEngine, TranslateEngine, ScaleTranslateEngine, BlendEngine, AgingServer, BlurZoomServer, BrightnessEngine, BurnServer, ChromaKeyServer, ChromaKeyServer, DiffKeyEngine, DotServer, DownSampleServer, GammaEngine, GradientServer, HistogramEngine, HoloServer, HueEngine, InterpolatePixelsEngine, IVTCEngine, LinearBlurEngine, AffineEngine, MotionScan, RotateScan, MotionBlurEngine, OilServer, PolarEngine, RadialBlurEngine, HistogramEngine, ThresholdEngine, TimeFrontServer, GlyphEngine, TitleEngine, TitleTranslate, UnsharpEngine, VideoScopeEngine, WaveServer, WhirlEngine, and ZoomBlurEngine.
Definition at line 68 of file loadbalance.h.
Referenced by create_packages().
| void LoadServer::process_packages | ( | ) |
Definition at line 220 of file loadbalance.C.
References clients, LoadClient::completion_lock, LoadPackage::completion_lock, create_clients(), create_packages(), current_package, init_packages(), LoadClient::input_lock, is_single, Condition::lock(), packages, total_clients, total_packages, and Condition::unlock().
Referenced by FadeEngine::do_fade(), MaskEngine::do_mask(), UnsharpEngine::do_unsharp(), TitleMain::draw_glyphs(), TitleMain::draw_mask(), OverlayFrame::overlay(), TitleMain::overlay_mask(), AffineEngine::process(), ZoomBlurMain::process_buffer(), TimeFrontMain::process_buffer(), RadialBlurMain::process_buffer(), LinearBlurMain::process_buffer(), InterpolatePixelsMain::process_buffer(), HueEffect::process_buffer(), GradientMain::process_buffer(), DiffKey::process_buffer(), ChromaKeyHSV::process_buffer(), ChromaKey::process_buffer(), BrightnessMain::process_buffer(), ThresholdEngine::process_packages(), HistogramEngine::process_packages(), GammaEngine::process_packages(), WhirlEffect::process_realtime(), WaveEffect::process_realtime(), PolarEffect::process_realtime(), OilEffect::process_realtime(), MotionBlurMain::process_realtime(), IVTCMain::process_realtime(), HoloMain::process_realtime(), DownSampleMain::process_realtime(), DotMain::process_realtime(), BurnMain::process_realtime(), BlurZoomMain::process_realtime(), AgingMain::process_realtime(), VideoScopeEffect::render_gui(), AffineEngine::rotate(), RotateScan::scan_frame(), MotionScan::scan_frame(), and FrameWriter::write_frames().

| void LoadServer::process_single | ( | ) |
Definition at line 251 of file loadbalance.C.
References create_clients(), create_packages(), current_package, init_packages(), is_single, LoadClient::run_single(), and single_client.
Referenced by AffineEngine::process(), and AffineEngine::rotate().

| int LoadServer::get_total_packages | ( | ) |
Definition at line 208 of file loadbalance.C.
References is_single, and total_packages.
Referenced by ZoomBlurEngine::init_packages(), WhirlEngine::init_packages(), WaveServer::init_packages(), VideoScopeEngine::init_packages(), UnsharpEngine::init_packages(), TitleTranslate::init_packages(), TimeFrontServer::init_packages(), ThresholdEngine::init_packages(), RadialBlurEngine::init_packages(), PolarEngine::init_packages(), OilServer::init_packages(), MotionBlurEngine::init_packages(), RotateScan::init_packages(), MotionScan::init_packages(), AffineEngine::init_packages(), LinearBlurEngine::init_packages(), IVTCEngine::init_packages(), InterpolatePixelsEngine::init_packages(), HueEngine::init_packages(), HoloServer::init_packages(), HistogramEngine::init_packages(), GradientServer::init_packages(), GammaEngine::init_packages(), DownSampleServer::init_packages(), DotServer::init_packages(), DiffKeyEngine::init_packages(), ChromaKeyServer::init_packages(), BurnServer::init_packages(), BrightnessEngine::init_packages(), BlurZoomServer::init_packages(), AgingServer::init_packages(), BlendEngine::init_packages(), ScaleTranslateEngine::init_packages(), TranslateEngine::init_packages(), ScaleEngine::init_packages(), MaskEngine::init_packages(), FrameWriter::init_packages(), FadeEngine::init_packages(), MaskUnit::process_package(), RotateScan::scan_frame(), and MotionScan::scan_frame().
| int LoadServer::get_total_clients | ( | ) |
Definition at line 214 of file loadbalance.C.
References is_single, and total_clients.
Referenced by HistogramMain::calculate_histogram(), FileList::get_units(), IVTCEngine::init_packages(), HistogramEngine::init_packages(), GammaEngine::init_packages(), HistogramEngine::process_packages(), GammaEngine::process_packages(), and IVTCMain::process_realtime().
| LoadPackage * LoadServer::get_package | ( | int | number | ) |
Definition at line 198 of file loadbalance.C.
References packages.
Referenced by WhirlEngine::init_packages(), WaveServer::init_packages(), VideoScopeEngine::init_packages(), UnsharpEngine::init_packages(), TitleTranslate::init_packages(), TitleEngine::init_packages(), GlyphEngine::init_packages(), PolarEngine::init_packages(), OilServer::init_packages(), RotateScan::init_packages(), MotionScan::init_packages(), HueEngine::init_packages(), DiffKeyEngine::init_packages(), ChromaKeyServer::init_packages(), MaskEngine::init_packages(), RotateScan::scan_frame(), and MotionScan::scan_frame().
| LoadClient * LoadServer::get_client | ( | int | number | ) |
Definition at line 203 of file loadbalance.C.
References clients.
Referenced by HistogramMain::calculate_histogram(), FileList::get_unit(), IVTCEngine::init_packages(), HistogramEngine::init_packages(), GammaEngine::init_packages(), HistogramEngine::process_packages(), GammaEngine::process_packages(), and IVTCMain::process_realtime().
| void LoadServer::set_package_count | ( | int | total_packages | ) |
Definition at line 160 of file loadbalance.C.
References create_packages(), and delete_packages().
Referenced by TitleMain::draw_glyphs(), TitleMain::draw_mask(), RotateScan::scan_frame(), MotionScan::scan_frame(), and FrameWriter::write_frames().

| void LoadServer::delete_clients | ( | ) |
Definition at line 136 of file loadbalance.C.
References clients, single_client, and total_clients.
Referenced by ~LoadServer().
| void LoadServer::create_clients | ( | ) |
Definition at line 168 of file loadbalance.C.
References clients, is_single, new_client(), LoadClient::server, single_client, Thread::start(), and total_clients.
Referenced by process_packages(), and process_single().

| void LoadServer::delete_packages | ( | ) |
Reimplemented in MaskEngine.
Definition at line 149 of file loadbalance.C.
References packages, and total_packages.
Referenced by set_package_count(), and ~LoadServer().
| void LoadServer::create_packages | ( | ) |
Definition at line 188 of file loadbalance.C.
References new_package(), packages, and total_packages.
Referenced by process_packages(), process_single(), and set_package_count().

friend class LoadClient [friend] |
Definition at line 63 of file loadbalance.h.
int LoadServer::current_package [private] |
Definition at line 97 of file loadbalance.h.
Referenced by TitleEngine::init_packages(), GlyphEngine::init_packages(), LoadServer(), process_packages(), process_single(), and LoadClient::run().
LoadPackage** LoadServer::packages [private] |
Definition at line 98 of file loadbalance.h.
Referenced by create_packages(), delete_packages(), get_package(), LoadServer(), process_packages(), and LoadClient::run_single().
int LoadServer::total_packages [private] |
Definition at line 99 of file loadbalance.h.
Referenced by create_packages(), delete_packages(), get_total_packages(), process_packages(), LoadClient::run(), and LoadClient::run_single().
LoadClient** LoadServer::clients [private] |
Definition at line 100 of file loadbalance.h.
Referenced by create_clients(), delete_clients(), get_client(), LoadServer(), and process_packages().
LoadClient* LoadServer::single_client [private] |
Definition at line 101 of file loadbalance.h.
Referenced by create_clients(), delete_clients(), LoadServer(), and process_single().
int LoadServer::total_clients [private] |
Definition at line 102 of file loadbalance.h.
Referenced by create_clients(), delete_clients(), get_total_clients(), and process_packages().
int LoadServer::is_single [private] |
Definition at line 103 of file loadbalance.h.
Referenced by create_clients(), get_total_clients(), get_total_packages(), LoadServer(), process_packages(), and process_single().
Mutex* LoadServer::client_lock [private] |
Definition at line 104 of file loadbalance.h.
Referenced by LoadServer(), LoadClient::run(), and ~LoadServer().
1.5.5