MStatus collisionShapeNode::compute( const MPlug& plug, MDataBlock& data ) { if(plug == oa_collisionShape) { computeOutputShape(plug, data); } else if(plug == ca_collisionShape) { computeCollisionShape(plug, data); } else if(plug == ca_collisionShapeParam) { computeCollisionShapeParam(plug, data); } else { return MStatus::kUnknownParameter; } return MStatus::kSuccess; }
void PoolingLayerImpl::allocate(const std::vector<Blob*> &inputs, std::vector<Blob> &outputs) { CV_Assert(inputs.size() > 0); inp = inputs[0]->size2(); computeOutputShape(inp); useOpenCL = ocl::useOpenCL(); outputs.resize(inputs.size()); for (size_t i = 0; i < inputs.size(); i++) { CV_Assert(inputs[i]->rows() == inp.height && inputs[i]->cols() == inp.width); outputs[i].create(BlobShape(inputs[i]->num(), inputs[i]->channels(), out.height, out.width)); } }