ObjectP.h
资源名称:X264CODEC.rar [点击查看]
上传用户:lctgjx
上传日期:2022-06-04
资源大小:8887k
文件大小:7k
源码类别:
流媒体/Mpeg4/MP4
开发平台:
Visual C++
- /* $Xorg: ObjectP.h,v 1.4 2001/02/09 02:03:56 xorgcvs Exp $ */
- /***********************************************************
- Copyright 1987, 1988, 1994, 1998 The Open Group
- Permission to use, copy, modify, distribute, and sell this software and its
- documentation for any purpose is hereby granted without fee, provided that
- the above copyright notice appear in all copies and that both that
- copyright notice and this permission notice appear in supporting
- documentation.
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- Except as contained in this notice, the name of The Open Group shall not be
- used in advertising or otherwise to promote the sale, use or other dealings
- in this Software without prior written authorization from The Open Group.
- Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
- All Rights Reserved
- Permission to use, copy, modify, and distribute this software and its
- documentation for any purpose and without fee is hereby granted,
- provided that the above copyright notice appear in all copies and that
- both that copyright notice and this permission notice appear in
- supporting documentation, and that the name of Digital not be
- used in advertising or publicity pertaining to distribution of the
- software without specific, written prior permission.
- DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
- ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
- DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
- ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
- WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
- ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
- SOFTWARE.
- ******************************************************************/
- #ifndef _Xt_ObjectP_h_
- #define _Xt_ObjectP_h_
- #include <X11/Object.h>
- /**********************************************************
- * Object Instance Data Structures
- *
- **********************************************************/
- /* these fields match CorePart and can not be changed */
- typedef struct _ObjectPart {
- Widget self; /* pointer to widget itself */
- WidgetClass widget_class; /* pointer to Widget's ClassRec */
- Widget parent; /* parent widget */
- XrmName xrm_name; /* widget resource name quarkified */
- Boolean being_destroyed; /* marked for destroy */
- XtCallbackList destroy_callbacks; /* who to call when widget destroyed */
- XtPointer constraints; /* constraint record */
- } ObjectPart;
- typedef struct _ObjectRec {
- ObjectPart object;
- } ObjectRec;
- /********************************************************
- * Object Class Data Structures
- *
- ********************************************************/
- /* these fields match CoreClassPart and can not be changed */
- /* ideally these structures would only contain the fields required;
- but because the CoreClassPart cannot be changed at this late date
- extraneous fields are necessary to make the field offsets match */
- typedef struct _ObjectClassPart {
- WidgetClass superclass; /* pointer to superclass ClassRec */
- String class_name; /* widget resource class name */
- Cardinal widget_size; /* size in bytes of widget record */
- XtProc class_initialize; /* class initialization proc */
- XtWidgetClassProc class_part_initialize; /* dynamic initialization */
- XtEnum class_inited; /* has class been initialized? */
- XtInitProc initialize; /* initialize subclass fields */
- XtArgsProc initialize_hook; /* notify that initialize called */
- XtProc obj1; /* NULL */
- XtPointer obj2; /* NULL */
- Cardinal obj3; /* NULL */
- XtResourceList resources; /* resources for subclass fields */
- Cardinal num_resources; /* number of entries in resources */
- XrmClass xrm_class; /* resource class quarkified */
- Boolean obj4; /* NULL */
- XtEnum obj5; /* NULL */
- Boolean obj6; /* NULL */
- Boolean obj7; /* NULL */
- XtWidgetProc destroy; /* free data for subclass pointers */
- XtProc obj8; /* NULL */
- XtProc obj9; /* NULL */
- XtSetValuesFunc set_values; /* set subclass resource values */
- XtArgsFunc set_values_hook; /* notify that set_values called */
- XtProc obj10; /* NULL */
- XtArgsProc get_values_hook; /* notify that get_values called */
- XtProc obj11; /* NULL */
- XtVersionType version; /* version of intrinsics used */
- XtPointer callback_private; /* list of callback offsets */
- String obj12; /* NULL */
- XtProc obj13; /* NULL */
- XtProc obj14; /* NULL */
- XtPointer extension; /* pointer to extension record */
- }ObjectClassPart;
- typedef struct {
- XtPointer next_extension; /* 1st 4 required for all extension records */
- XrmQuark record_type; /* NULLQUARK; when on ObjectClassPart */
- long version; /* must be XtObjectExtensionVersion */
- Cardinal record_size; /* sizeof(ObjectClassExtensionRec) */
- XtAllocateProc allocate;
- XtDeallocateProc deallocate;
- } ObjectClassExtensionRec, *ObjectClassExtension;
- typedef struct _ObjectClassRec {
- ObjectClassPart object_class;
- } ObjectClassRec;
- externalref ObjectClassRec objectClassRec;
- #define XtObjectExtensionVersion 1L
- #define XtInheritAllocate ((XtAllocateProc) _XtInherit)
- #define XtInheritDeallocate ((XtDeallocateProc) _XtInherit)
- #endif /*_Xt_ObjectP_h_*/