PathConsumer2D.h revision 2362
779N/A * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved. 779N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 779N/A * This code is free software; you can redistribute it and/or modify it 779N/A * under the terms of the GNU General Public License version 2 only, as 779N/A * published by the Free Software Foundation. Oracle designates this 857N/A * particular file as subject to the "Classpath" exception as provided 779N/A * by Oracle in the LICENSE file that accompanied this code. 779N/A * This code is distributed in the hope that it will be useful, but WITHOUT 779N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 779N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 779N/A * version 2 for more details (a copy is included in the LICENSE file that 779N/A * accompanied this code). 779N/A * You should have received a copy of the GNU General Public License version 779N/A * 2 along with this work; if not, write to the Free Software Foundation, 779N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 779N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA /* For forward referencing - struct defined below. */ * Note on Error Conditions: * The following functions all return true on an error condition which * precludes any further processing. The module calling these functions * should cease the operation and invoke its own error handling. * The return value is the only indication of the error, no exceptions * should be thrown by the consumer - the caller is solely responsible * The most common cause of failure is an allocation failure so a * true return code could be reported as an "out of memory" error * No cleanup of the native consumer is required upon either a successful * completion of the path or upon an error return. Such cleanup will * be handled elsewhere via other mechanisms (finalization, try/finally, /* See GeneralPath.moveTo - returns true on error condition. */ /* See GeneralPath.lineTo - returns true on error condition. */ /* See GeneralPath.quadTo - returns true on error condition. */ /* See GeneralPath.closePath - returns true on error condition. */ * This function must be called after the last segment of the last * subpath is sent to the above methods. No further calls should * be made to any of the PathConsumerVec functions subsequently. * This structure defines the list of function pointers for implementations * of the above specified functions. A pointer to this structure is also * handed to each function as its first parameter. If the implementation * needs private context-specific data then it can be stored adjacent to * the PathConsumerVec structure in the same allocated storage.