You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1850 lines
44 KiB
1850 lines
44 KiB
/* |
|
File: QD3DIO.h |
|
|
|
Contains: QuickDraw 3D IO API |
|
|
|
Version: Technology: Quickdraw 3D 1.6 |
|
Release: QuickTime 7.3 |
|
|
|
Copyright: (c) 2007 (c) 1995-1999 by Apple Computer, Inc., all rights reserved. |
|
|
|
Bugs?: For bug reports, consult the following page on |
|
the World Wide Web: |
|
|
|
http://developer.apple.com/bugreporter/ |
|
|
|
*/ |
|
#ifndef __QD3DIO__ |
|
#define __QD3DIO__ |
|
|
|
#ifndef __QD3D__ |
|
#include <QD3D.h> |
|
#endif |
|
|
|
|
|
#ifndef __QD3DDRAWCONTEXT__ |
|
#include <QD3DDrawContext.h> |
|
#endif |
|
|
|
#ifndef __QD3DVIEW__ |
|
#include <QD3DView.h> |
|
#endif |
|
|
|
|
|
|
|
|
|
#if PRAGMA_ONCE |
|
#pragma once |
|
#endif |
|
|
|
#ifdef __cplusplus |
|
extern "C" { |
|
#endif |
|
|
|
#if PRAGMA_IMPORT |
|
#pragma import on |
|
#endif |
|
|
|
#if PRAGMA_STRUCT_ALIGN |
|
#pragma options align=power |
|
#elif PRAGMA_STRUCT_PACKPUSH |
|
#pragma pack(push, 2) |
|
#elif PRAGMA_STRUCT_PACK |
|
#pragma pack(2) |
|
#endif |
|
|
|
#if PRAGMA_ENUM_ALWAYSINT |
|
#if defined(__fourbyteints__) && !__fourbyteints__ |
|
#define __QD3DIO__RESTORE_TWOBYTEINTS |
|
#pragma fourbyteints on |
|
#endif |
|
#pragma enumsalwaysint on |
|
#elif PRAGMA_ENUM_OPTIONS |
|
#pragma option enum=int |
|
#elif PRAGMA_ENUM_PACK |
|
#if __option(pack_enums) |
|
#define __QD3DIO__RESTORE_PACKED_ENUMS |
|
#pragma options(!pack_enums) |
|
#endif |
|
#endif |
|
|
|
/****************************************************************************** |
|
** ** |
|
** Basic Types ** |
|
** ** |
|
*****************************************************************************/ |
|
typedef unsigned char TQ3Uns8; |
|
typedef signed char TQ3Int8; |
|
typedef unsigned short TQ3Uns16; |
|
typedef signed short TQ3Int16; |
|
typedef unsigned long TQ3Uns32; |
|
typedef signed long TQ3Int32; |
|
#if TARGET_RT_BIG_ENDIAN |
|
struct TQ3Uns64 { |
|
unsigned long hi; |
|
unsigned long lo; |
|
}; |
|
typedef struct TQ3Uns64 TQ3Uns64; |
|
struct TQ3Int64 { |
|
signed long hi; |
|
unsigned long lo; |
|
}; |
|
typedef struct TQ3Int64 TQ3Int64; |
|
#else |
|
struct TQ3Uns64 { |
|
unsigned long lo; |
|
unsigned long hi; |
|
}; |
|
typedef struct TQ3Uns64 TQ3Uns64; |
|
struct TQ3Int64 { |
|
unsigned long lo; |
|
signed long hi; |
|
}; |
|
typedef struct TQ3Int64 TQ3Int64; |
|
#endif /* TARGET_RT_BIG_ENDIAN */ |
|
|
|
|
|
typedef float TQ3Float32; |
|
typedef double TQ3Float64; |
|
typedef TQ3Uns32 TQ3Size; |
|
/****************************************************************************** |
|
** ** |
|
** File Types ** |
|
** ** |
|
*****************************************************************************/ |
|
enum TQ3FileModeMasks { |
|
kQ3FileModeNormal = 0, |
|
kQ3FileModeStream = 1 << 0, |
|
kQ3FileModeDatabase = 1 << 1, |
|
kQ3FileModeText = 1 << 2 |
|
}; |
|
typedef enum TQ3FileModeMasks TQ3FileModeMasks; |
|
|
|
typedef unsigned long TQ3FileMode; |
|
/****************************************************************************** |
|
** ** |
|
** Method Types ** |
|
** ** |
|
*****************************************************************************/ |
|
/* |
|
* IO Methods |
|
* |
|
* The IO system treats all objects as groups of typed information. |
|
* When you register your element or attribute, the "elementType" is the |
|
* binary type of your object, the "elementName" the ascii type. |
|
* |
|
* All objects in the metafile are made up of a "root" or parent object which |
|
* defines the instantiated object type. You may define the format of your |
|
* data any way you wish as long as you use the primitives types above and the |
|
* routines below. |
|
* |
|
* Root Objects are often appended with additional child objects, called |
|
* subobjects. You may append your object with other QuickDraw 3D objects. |
|
* |
|
* Writing is straightforward: an object traverses itself any other objects |
|
* that make it up, then writes its own data. Writing uses two methods: |
|
* TQ3XObjectTraverseMethod and TQ3XObjectWriteMethod. |
|
* |
|
* The TQ3XObjectTraverseMethod method should: |
|
* + First, Determine if the data should be written |
|
* - if you don't want to write out your object after examining your |
|
* data, return kQ3Success in your Traverse method without calling |
|
* any other submit calls. |
|
* + Next, calculate the size of your object on disk |
|
* + Gather whatever state from the view you need to preserve |
|
* - you may access the view state NOW, as the state of the |
|
* view duing your TQ3XObjectWriteMethod will not be valid. You may |
|
* pass a temporary buffer to your write method. |
|
* + Submit your view write data using Q3View_SubmitWriteData |
|
* - note that you MUST call this before any other "_Submit" call. |
|
* - you may pass in a "deleteMethod" for your data. This method |
|
* will be called whether or not your write method succeeds or fails. |
|
* + Submit your subobjects to the view |
|
* |
|
* The TQ3XObjectWriteMethod method should: |
|
* + Write your data format to the file using the primitives routines below. |
|
* - If you passed a "deleteMethod" in your Q3View_SubmitWriteData, that |
|
* method will be called upon exit of your write method. |
|
* |
|
* Reading is less straightforward because your root object and |
|
* any subobjects must be read inside of your TQ3XObjectReadDataMethod. There |
|
* is an implicit state contained in the file while reading, which you must |
|
* be aware of. When you first enter the read method, you must physically |
|
* read in your data format using the primitives routines until |
|
* |
|
* Q3File_IsEndOfData(file) == kQ3True |
|
* |
|
* Generally, your data format should be self-descriptive such that you do not |
|
* need to call Q3File_IsEndOfData to determine if you are done reading. |
|
* However, this call is useful for determining zero-sized object or |
|
* determining the end of an object's data. |
|
* |
|
* Once you have read in all the data, you may collect subobjects. A metafile |
|
* object ONLY has subobjects if it is in a container. The call |
|
* |
|
* Q3File_IsEndOfContainer(file) |
|
* |
|
* returns kQ3False if subobjects exist, and kQ3True if subobjects do not |
|
* exist. |
|
* |
|
* At this point, you may use |
|
* |
|
* Q3File_GetNextObjectType |
|
* Q3File_IsNextObjectOfType |
|
* Q3File_ReadObject |
|
* Q3File_SkipObject |
|
* |
|
* to iterate through the subobjects until Q3File_IsEndOfContainer(file) |
|
* is kQ3True. |
|
* |
|
*/ |
|
|
|
/* |
|
* IO Methods |
|
*/ |
|
enum { |
|
kQ3XMethodTypeObjectFileVersion = FOUR_CHAR_CODE('vers'), /* version */ |
|
kQ3XMethodTypeObjectTraverse = FOUR_CHAR_CODE('trvs'), /* byte count */ |
|
kQ3XMethodTypeObjectTraverseData = FOUR_CHAR_CODE('trvd'), /* byte count */ |
|
kQ3XMethodTypeObjectWrite = FOUR_CHAR_CODE('writ'), /* Dump info to file */ |
|
kQ3XMethodTypeObjectReadData = FOUR_CHAR_CODE('rddt'), /* Read info from file into buffer or, attach read data to parent */ |
|
kQ3XMethodTypeObjectRead = FOUR_CHAR_CODE('read'), |
|
kQ3XMethodTypeObjectAttach = FOUR_CHAR_CODE('attc') |
|
}; |
|
|
|
/* |
|
* TQ3XObjectTraverseMethod |
|
* |
|
* For "elements" (meaning "attributes, too), you will be passed NULL for |
|
* object. Sorry, custom objects will be available in the next major revision. |
|
* |
|
* The "data" is a pointer to your internal element data. |
|
* |
|
* The view is the current traversal view. |
|
*/ |
|
typedef CALLBACK_API_C( TQ3Status , TQ3XObjectTraverseMethod )(TQ3Object object, void *data, TQ3ViewObject view); |
|
/* |
|
* TQ3XObjectTraverseDataMethod |
|
*/ |
|
typedef CALLBACK_API_C( TQ3Status , TQ3XObjectTraverseDataMethod )(TQ3Object object, void *data, TQ3ViewObject view); |
|
/* |
|
* TQ3XObjectWriteMethod |
|
*/ |
|
typedef CALLBACK_API_C( TQ3Status , TQ3XObjectWriteMethod )(const void *object, TQ3FileObject theFile); |
|
/* |
|
* Custom object writing |
|
*/ |
|
typedef CALLBACK_API_C( void , TQ3XDataDeleteMethod )(void * data); |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3XView_SubmitWriteData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3XView_SubmitWriteData( |
|
TQ3ViewObject view, |
|
TQ3Size size, |
|
void * data, |
|
TQ3XDataDeleteMethod deleteData); |
|
|
|
|
|
/* |
|
* Q3XView_SubmitSubObjectData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3XView_SubmitSubObjectData( |
|
TQ3ViewObject view, |
|
TQ3XObjectClass objectClass, |
|
unsigned long size, |
|
void * data, |
|
TQ3XDataDeleteMethod deleteData); |
|
|
|
|
|
/* |
|
* TQ3XObjectReadMethod |
|
*/ |
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
typedef CALLBACK_API_C( TQ3Object , TQ3XObjectReadMethod )(TQ3FileObject theFile); |
|
/* |
|
* TQ3XObjectReadDataMethod |
|
* |
|
* For "elements" (meaning "attributes", too), you must allocate stack space |
|
* and call Q3Set_Add on "parentObject", which is an TQ3SetObject. |
|
* |
|
* Otherwise, parentObject is whatever object your element is a subobject of... |
|
*/ |
|
typedef CALLBACK_API_C( TQ3Status , TQ3XObjectReadDataMethod )(TQ3Object parentObject, TQ3FileObject theFile); |
|
/* |
|
* TQ3XObjectAttachMethod |
|
*/ |
|
typedef CALLBACK_API_C( TQ3Status , TQ3XObjectAttachMethod )(TQ3Object childObject, TQ3Object parentObject); |
|
|
|
|
|
/****************************************************************************** |
|
** ** |
|
** Versioning ** |
|
** ** |
|
*****************************************************************************/ |
|
|
|
#define Q3FileVersion(majorVersion, minorVersion) (TQ3FileVersion) \ |
|
((((TQ3Uns32) majorVersion & 0xFFFF) << 16) | ((TQ3Uns32) minorVersion & 0xFFFF)) |
|
|
|
typedef unsigned long TQ3FileVersion; |
|
#define kQ3FileVersionCurrent Q3FileVersion(1,6) |
|
|
|
/****************************************************************************** |
|
** ** |
|
** File Routines ** |
|
** ** |
|
*****************************************************************************/ |
|
/* |
|
* Creation and accessors |
|
*/ |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3File_New() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3FileObject ) |
|
Q3File_New(void); |
|
|
|
|
|
/* |
|
* Q3File_GetStorage() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_GetStorage( |
|
TQ3FileObject theFile, |
|
TQ3StorageObject * storage); |
|
|
|
|
|
/* |
|
* Q3File_SetStorage() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_SetStorage( |
|
TQ3FileObject theFile, |
|
TQ3StorageObject storage); |
|
|
|
|
|
/* |
|
* Opening, and accessing "open" state, closing/cancelling |
|
*/ |
|
/* |
|
* Q3File_OpenRead() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_OpenRead( |
|
TQ3FileObject theFile, |
|
TQ3FileMode * mode); |
|
|
|
|
|
/* |
|
* Q3File_OpenWrite() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_OpenWrite( |
|
TQ3FileObject theFile, |
|
TQ3FileMode mode); |
|
|
|
|
|
/* |
|
* Q3File_IsOpen() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_IsOpen( |
|
TQ3FileObject theFile, |
|
TQ3Boolean * isOpen); |
|
|
|
|
|
/* |
|
* Q3File_GetMode() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_GetMode( |
|
TQ3FileObject theFile, |
|
TQ3FileMode * mode); |
|
|
|
|
|
/* |
|
* Q3File_GetVersion() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_GetVersion( |
|
TQ3FileObject theFile, |
|
TQ3FileVersion * version); |
|
|
|
|
|
/* |
|
* Q3File_Close() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_Close(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3File_Cancel() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_Cancel(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Writing (Application) |
|
*/ |
|
/* |
|
* Q3View_StartWriting() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3View_StartWriting( |
|
TQ3ViewObject view, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3View_EndWriting() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3ViewStatus ) |
|
Q3View_EndWriting(TQ3ViewObject view); |
|
|
|
|
|
/* |
|
* Reading (Application) |
|
*/ |
|
/* |
|
* Q3File_GetNextObjectType() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3ObjectType ) |
|
Q3File_GetNextObjectType(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3File_IsNextObjectOfType() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Boolean ) |
|
Q3File_IsNextObjectOfType( |
|
TQ3FileObject theFile, |
|
TQ3ObjectType ofType); |
|
|
|
|
|
/* |
|
* Q3File_ReadObject() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Object ) |
|
Q3File_ReadObject(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3File_SkipObject() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_SkipObject(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3File_IsEndOfData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Boolean ) |
|
Q3File_IsEndOfData(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3File_IsEndOfContainer() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Boolean ) |
|
Q3File_IsEndOfContainer( |
|
TQ3FileObject theFile, |
|
TQ3Object rootObject); |
|
|
|
|
|
/* |
|
* Q3File_IsEndOfFile() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Boolean ) |
|
Q3File_IsEndOfFile(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* External file references |
|
*/ |
|
/* |
|
* Q3File_MarkAsExternalReference() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_MarkAsExternalReference( |
|
TQ3FileObject theFile, |
|
TQ3SharedObject sharedObject); |
|
|
|
|
|
/* |
|
* Q3File_GetExternalReferences() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3GroupObject ) |
|
Q3File_GetExternalReferences(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Tracking editing in read-in objects with custom elements |
|
*/ |
|
/* |
|
* Q3Shared_ClearEditTracking() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Shared_ClearEditTracking(TQ3SharedObject sharedObject); |
|
|
|
|
|
/* |
|
* Q3Shared_GetEditTrackingState() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Boolean ) |
|
Q3Shared_GetEditTrackingState(TQ3SharedObject sharedObject); |
|
|
|
|
|
/* |
|
* Reading objects inside a group one-by-one |
|
*/ |
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
enum TQ3FileReadGroupStateMasks { |
|
kQ3FileReadWholeGroup = 0, |
|
kQ3FileReadObjectsInGroup = 1 << 0, |
|
kQ3FileCurrentlyInsideGroup = 1 << 1 |
|
}; |
|
typedef enum TQ3FileReadGroupStateMasks TQ3FileReadGroupStateMasks; |
|
|
|
typedef unsigned long TQ3FileReadGroupState; |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3File_SetReadInGroup() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_SetReadInGroup( |
|
TQ3FileObject theFile, |
|
TQ3FileReadGroupState readGroupState); |
|
|
|
|
|
/* |
|
* Q3File_GetReadInGroup() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_GetReadInGroup( |
|
TQ3FileObject theFile, |
|
TQ3FileReadGroupState * readGroupState); |
|
|
|
|
|
|
|
/* |
|
* Idling |
|
*/ |
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
typedef CALLBACK_API_C( TQ3Status , TQ3FileIdleMethod )(TQ3FileObject theFile, const void *idlerData); |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3File_SetIdleMethod() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3File_SetIdleMethod( |
|
TQ3FileObject theFile, |
|
TQ3FileIdleMethod idle, |
|
const void * idleData); |
|
|
|
|
|
|
|
/****************************************************************************** |
|
** ** |
|
** Primitives Routines ** |
|
** ** |
|
*****************************************************************************/ |
|
/* |
|
* Q3NewLine_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3NewLine_Write(TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns8_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns8_Read( |
|
TQ3Uns8 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns8_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns8_Write( |
|
TQ3Uns8 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns16_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns16_Read( |
|
TQ3Uns16 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns16_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns16_Write( |
|
TQ3Uns16 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns32_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns32_Read( |
|
TQ3Uns32 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns32_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns32_Write( |
|
TQ3Uns32 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int8_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int8_Read( |
|
TQ3Int8 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int8_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int8_Write( |
|
TQ3Int8 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int16_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int16_Read( |
|
TQ3Int16 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int16_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int16_Write( |
|
TQ3Int16 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int32_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int32_Read( |
|
TQ3Int32 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int32_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int32_Write( |
|
TQ3Int32 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns64_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns64_Read( |
|
TQ3Uns64 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Uns64_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Uns64_Write( |
|
TQ3Uns64 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int64_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int64_Read( |
|
TQ3Int64 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Int64_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Int64_Write( |
|
TQ3Int64 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Float32_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Float32_Read( |
|
TQ3Float32 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Float32_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Float32_Write( |
|
TQ3Float32 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Float64_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Float64_Read( |
|
TQ3Float64 * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Float64_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Float64_Write( |
|
TQ3Float64 data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Size_Pad() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Size ) |
|
Q3Size_Pad(TQ3Size size); |
|
|
|
|
|
/* |
|
* Pass a pointer to a buffer of kQ3StringMaximumLength bytes |
|
*/ |
|
/* |
|
* Q3String_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3String_Read( |
|
char * data, |
|
unsigned long * length, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3String_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3String_Write( |
|
const char * data, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* This call will read Q3Size_Pad(size) bytes, |
|
* but only place size bytes into data. |
|
*/ |
|
/* |
|
* Q3RawData_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3RawData_Read( |
|
unsigned char * data, |
|
unsigned long size, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* This call will write Q3Size_Pad(size) bytes, |
|
* adding 0's to pad to the nearest 4 byte boundary. |
|
*/ |
|
/* |
|
* Q3RawData_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3RawData_Write( |
|
const unsigned char * data, |
|
unsigned long size, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/****************************************************************************** |
|
** ** |
|
** Convenient Primitives Routines ** |
|
** ** |
|
*****************************************************************************/ |
|
/* |
|
* Q3Point2D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Point2D_Read( |
|
TQ3Point2D * point2D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Point2D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Point2D_Write( |
|
const TQ3Point2D * point2D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Point3D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Point3D_Read( |
|
TQ3Point3D * point3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Point3D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Point3D_Write( |
|
const TQ3Point3D * point3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3RationalPoint3D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3RationalPoint3D_Read( |
|
TQ3RationalPoint3D * point3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3RationalPoint3D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3RationalPoint3D_Write( |
|
const TQ3RationalPoint3D * point3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3RationalPoint4D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3RationalPoint4D_Read( |
|
TQ3RationalPoint4D * point4D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3RationalPoint4D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3RationalPoint4D_Write( |
|
const TQ3RationalPoint4D * point4D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Vector2D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Vector2D_Read( |
|
TQ3Vector2D * vector2D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Vector2D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Vector2D_Write( |
|
const TQ3Vector2D * vector2D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Vector3D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Vector3D_Read( |
|
TQ3Vector3D * vector3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Vector3D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Vector3D_Write( |
|
const TQ3Vector3D * vector3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Matrix4x4_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Matrix4x4_Read( |
|
TQ3Matrix4x4 * matrix4x4, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Matrix4x4_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Matrix4x4_Write( |
|
const TQ3Matrix4x4 * matrix4x4, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Tangent2D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Tangent2D_Read( |
|
TQ3Tangent2D * tangent2D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Tangent2D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Tangent2D_Write( |
|
const TQ3Tangent2D * tangent2D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Tangent3D_Read() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Tangent3D_Read( |
|
TQ3Tangent3D * tangent3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* |
|
* Q3Tangent3D_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Tangent3D_Write( |
|
const TQ3Tangent3D * tangent3D, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/* This call affects only text Files - it is a no-op in binary files */ |
|
/* |
|
* Q3Comment_Write() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Comment_Write( |
|
char * comment, |
|
TQ3FileObject theFile); |
|
|
|
|
|
/****************************************************************************** |
|
** ** |
|
** Unknown Object ** |
|
** ** |
|
** Unknown objects are generated when reading files which contain ** |
|
** custom data which has not been registered in the current ** |
|
** instantiation of QuickDraw 3D. ** |
|
** ** |
|
*****************************************************************************/ |
|
/* |
|
* Q3Unknown_GetType() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3ObjectType ) |
|
Q3Unknown_GetType(TQ3UnknownObject unknownObject); |
|
|
|
|
|
/* |
|
* Q3Unknown_GetDirtyState() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Unknown_GetDirtyState( |
|
TQ3UnknownObject unknownObject, |
|
TQ3Boolean * isDirty); |
|
|
|
|
|
/* |
|
* Q3Unknown_SetDirtyState() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3Unknown_SetDirtyState( |
|
TQ3UnknownObject unknownObject, |
|
TQ3Boolean isDirty); |
|
|
|
|
|
|
|
/****************************************************************************** |
|
** ** |
|
** Unknown Text Routines ** |
|
** ** |
|
*****************************************************************************/ |
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
struct TQ3UnknownTextData { |
|
char * objectName; /* '\0' terminated */ |
|
char * contents; /* '\0' terminated */ |
|
}; |
|
typedef struct TQ3UnknownTextData TQ3UnknownTextData; |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3UnknownText_GetData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3UnknownText_GetData( |
|
TQ3UnknownObject unknownObject, |
|
TQ3UnknownTextData * unknownTextData); |
|
|
|
|
|
/* |
|
* Q3UnknownText_EmptyData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3UnknownText_EmptyData(TQ3UnknownTextData * unknownTextData); |
|
|
|
|
|
|
|
/****************************************************************************** |
|
** ** |
|
** Unknown Binary Routines ** |
|
** ** |
|
*****************************************************************************/ |
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
struct TQ3UnknownBinaryData { |
|
TQ3ObjectType objectType; |
|
unsigned long size; |
|
TQ3Endian byteOrder; |
|
char * contents; |
|
}; |
|
typedef struct TQ3UnknownBinaryData TQ3UnknownBinaryData; |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3UnknownBinary_GetData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3UnknownBinary_GetData( |
|
TQ3UnknownObject unknownObject, |
|
TQ3UnknownBinaryData * unknownBinaryData); |
|
|
|
|
|
/* |
|
* Q3UnknownBinary_EmptyData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3UnknownBinary_EmptyData(TQ3UnknownBinaryData * unknownBinaryData); |
|
|
|
|
|
|
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3UnknownBinary_GetTypeString() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3UnknownBinary_GetTypeString( |
|
TQ3UnknownObject unknownObject, |
|
char ** typeString); |
|
|
|
|
|
/* |
|
* Q3UnknownBinary_EmptyTypeString() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3UnknownBinary_EmptyTypeString(char ** typeString); |
|
|
|
|
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
/****************************************************************************** |
|
** ** |
|
** ViewHints routines ** |
|
** ** |
|
** ViewHints are an object in a metafile to give you some hints on how ** |
|
** to render a scene. You may create a view with any of the objects ** |
|
** retrieved from it, or you can just throw it away. ** |
|
** ** |
|
** To write a view hints to a file, create a view hints object from a ** |
|
** view and write the view hints. ** |
|
** ** |
|
*****************************************************************************/ |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* Q3ViewHints_New() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3ViewHintsObject ) |
|
Q3ViewHints_New(TQ3ViewObject view); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetRenderer() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetRenderer( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3RendererObject renderer); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetRenderer() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetRenderer( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3RendererObject * renderer); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetCamera() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetCamera( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3CameraObject camera); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetCamera() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetCamera( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3CameraObject * camera); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetLightGroup() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetLightGroup( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3GroupObject lightGroup); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetLightGroup() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetLightGroup( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3GroupObject * lightGroup); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetAttributeSet() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetAttributeSet( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3AttributeSet attributeSet); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetAttributeSet() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetAttributeSet( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3AttributeSet * attributeSet); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetDimensionsState() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetDimensionsState( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3Boolean isValid); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetDimensionsState() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetDimensionsState( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3Boolean * isValid); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetDimensions() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetDimensions( |
|
TQ3ViewHintsObject viewHints, |
|
unsigned long width, |
|
unsigned long height); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetDimensions() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetDimensions( |
|
TQ3ViewHintsObject viewHints, |
|
unsigned long * width, |
|
unsigned long * height); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetMaskState() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetMaskState( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3Boolean isValid); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetMaskState() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetMaskState( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3Boolean * isValid); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetMask() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetMask( |
|
TQ3ViewHintsObject viewHints, |
|
const TQ3Bitmap * mask); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetMask() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetMask( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3Bitmap * mask); |
|
|
|
|
|
/* Call Q3Bitmap_Empty when done with the mask */ |
|
/* |
|
* Q3ViewHints_SetClearImageMethod() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetClearImageMethod( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3DrawContextClearImageMethod clearMethod); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetClearImageMethod() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetClearImageMethod( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3DrawContextClearImageMethod * clearMethod); |
|
|
|
|
|
/* |
|
* Q3ViewHints_SetClearImageColor() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_SetClearImageColor( |
|
TQ3ViewHintsObject viewHints, |
|
const TQ3ColorARGB * color); |
|
|
|
|
|
/* |
|
* Q3ViewHints_GetClearImageColor() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: not available |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( TQ3Status ) |
|
Q3ViewHints_GetClearImageColor( |
|
TQ3ViewHintsObject viewHints, |
|
TQ3ColorARGB * color); |
|
|
|
|
|
|
|
|
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
|
|
#if PRAGMA_ENUM_ALWAYSINT |
|
#pragma enumsalwaysint reset |
|
#ifdef __QD3DIO__RESTORE_TWOBYTEINTS |
|
#pragma fourbyteints off |
|
#endif |
|
#elif PRAGMA_ENUM_OPTIONS |
|
#pragma option enum=reset |
|
#elif defined(__QD3DIO__RESTORE_PACKED_ENUMS) |
|
#pragma options(pack_enums) |
|
#endif |
|
|
|
#if PRAGMA_STRUCT_ALIGN |
|
#pragma options align=reset |
|
#elif PRAGMA_STRUCT_PACKPUSH |
|
#pragma pack(pop) |
|
#elif PRAGMA_STRUCT_PACK |
|
#pragma pack() |
|
#endif |
|
|
|
#ifdef PRAGMA_IMPORT_OFF |
|
#pragma import off |
|
#elif PRAGMA_IMPORT |
|
#pragma import reset |
|
#endif |
|
|
|
#ifdef __cplusplus |
|
} |
|
#endif |
|
|
|
#endif /* __QD3DIO__ */ |
|
|
|
|