void ImageHostOverlay::Composite(EffectChain& aEffectChain, float aOpacity, const gfx::Matrix4x4& aTransform, const gfx::Filter& aFilter, const gfx::Rect& aClipRect, const nsIntRegion* aVisibleRegion) { if (!GetCompositor()) { return; } if (mOverlay.handle().type() == OverlayHandle::Tnull_t) return; Color hollow(0.0f, 0.0f, 0.0f, 0.0f); aEffectChain.mPrimaryEffect = new EffectSolidColor(hollow); aEffectChain.mSecondaryEffects[EffectTypes::BLEND_MODE] = new EffectBlendMode(CompositionOp::OP_SOURCE); gfx::Rect rect; gfx::Rect clipRect(aClipRect.x, aClipRect.y, aClipRect.width, aClipRect.height); if (mHasPictureRect) { rect.SetRect(mPictureRect.x, mPictureRect.y, mPictureRect.width, mPictureRect.height); } else { rect.SetRect(0, 0, mOverlay.size().width, mOverlay.size().height); } mCompositor->DrawQuad(rect, aClipRect, aEffectChain, aOpacity, aTransform); mCompositor->DrawDiagnostics(DiagnosticFlags::IMAGE | DiagnosticFlags::BIGIMAGE, rect, aClipRect, aTransform, mFlashCounter); }
// main program - initialize, then send to proper function int main (int argc, char **argv) { // Start up CGM CubitStatus status = InitCGMA::initialize_cgma("ACIS"); if (CUBIT_SUCCESS != status) return 1; //Do hollow operation to make thick body. status = hollow(); if (status == CUBIT_FAILURE) PRINT_INFO("Operation Failed"); int ret_val = ( CubitMessage::instance()->error_count() ); if ( ret_val > 0 ) { PRINT_ERROR("Errors found during Mergechk session.\n"); } return ret_val; }