Gestalt Manager

Investigate the operating environment of your app.

Topics

Getting and Setting Gestalt Selector Codes and Values

Gestalt

Obtains information about the operating environment.

NewGestaltValue

Installs a new Gestalt selector code and a value that Gestalt returns for that selector.

SetGestaltValue

Sets the value the function Gestalt will return for a specified selector code, installing the selector if it was not already installed.

ReplaceGestaltValue

Replaces the value that the function Gestalt returns for a specified selector code with the value provided to the function.

DeleteGestaltValue

Deletes a Gestalt selector code so that it is no longer recognized by Gestalt.

Working With Universal Procedure Pointers for Gestalt Selector Functions

NewSelectorFunctionUPP

Creates a universal procedure pointer (UPP) to a selector callback function.

DisposeSelectorFunctionUPP

Disposes of a universal procedure pointer to a selector callback function.

InvokeSelectorFunctionUPP

Invokes a selector callback function.

Callbacks

SelectorFunctionProcPtr

Defines a pointer to a selector callback function that returns information associated with your own selector code.

Data Types

SelectorFunctionUPP

Defines a universal procedure pointer to a selector function callback.

Constants

Addressing Mode Attribute Selectors

Specify feature availability information for the addressing mode of the operating system.

Admin Attribute Selectors

Specify feature availability for Macintosh Manager administration software.

AFP Client Selectors

Specify version and feature availability information for the AFP client.

Alias Manager Attribute Selectors

Specify feature availability information for the Alias Manager.

Appearance Manager Attribute Selectors

Specify feature availability information for the Appearance Manager.

Appearance Manager Version Selector

Specifies version information for the Appearance Manager.

Apple Event Manager Attribute Selectors

Specify feature availability information for the Apple Event Manager.

AppleScript Attribute Selectors

Specify feature availability information for AppleScript.

AppleScript Version Selector

Specifies version information for AppleScript.

AppleTalk Driver Version Selector

Specifies version information for the AppleTalk driver.

AppleTalk Version Selector

Specifies version information for AppleTalk.

ATSUI Attribute Selectors

Specify feature availability for Apple Type Services for Unicode Imaging.

ATSUI Version Selectors

Specify version information for Apple Type Service for Unicode Imaging.

ATA Manager Attribute Selectors

Specify feature availability information for the ATA Manager.

AUX Version Selector

Specifies version information for A/UX.

AVL Tree Attribute Selectors

Specify feature availability information for AVL tree routines.

Bus Clock Version Selector

Specifies version information for the bus clock speed.

Carbon Version Selector

Specifies version information for Carbon.

Classic Compatibility Attribute Selectors

Specify feature availability for the Classic environment.

CloseView Attribute Selectors

Specify feature availability information for CloseView.

Code Fragment Manager Attribute Selectors

Specify feature availability information for the Code Fragment Manager.

Collection Manager Version Selector

Specify version information for the Collection manager.

Color Picker Version Selectors

Specify version information for the Color Picker.

ColorSync Manager Attribute Selectors

Specify feature availability information for the ColorSync Manager.

ColorSync Manager Version Selectors

Specify version information for the ColorSync Manager.

Communications Toolbox Version Selector

Specifies version information for the Communications Toolbox.

Communication Resource Manager Attribute Selectors

Specify version and feature availability information for the Communications Resource Manager.

Component Manager Version Selectors

Specify version information for the Component Manager.

Computer Model Selectors

Specify computer models.

Computer Name Selector

Specifies user-visibility information for the computer name.

Connection Manager Attribute Selectors

Specify feature availability information for the Connection Manager.

Control Manager Attribute Selectors

Specify feature availability information for the Control Manager.

Control Manager Version Selector

Specifies version information for the Control Manager.

Control Strip Attribute Selectors

Specify feature availability for the Control Strip.

Control Strip Version Selector

Specifies version information for the Control Strip.

CPU Selectors for Apollo

Specify version information for Apollo CPUs.

CPU Selectors for Intel and Pentium

Specify version information for Intel and Pentium CPUs.

Data Access Manager Attribute Selectors

Specify feature availability information for the Data Access Manager.

Desktop Pictures Attribute Selectors

Specify feature availability information for Desktop Pictures.

Desktop Printing Attribute Selector

Specify feature availability information for all desktop printer.

Desktop Printing Driver Attribute Selectors

Specify feature availability for third-party desktop printing drivers.

Dialog Manager Attribute Selectors

Specify feature availability for the Dialog Manager.

Dictionary Manager Attribute Selectors

Specify feature availability information for the Dictionary Manager.

Dialog Manager Selectors for Mac OS 8.5

Specify version and feature availability information for the Dialog Manager in Mac OS 8.5.

Digital Signature Version Selector

Specifies version information for digital signatures.

Direct IO Attribute Selector

Specifies availability of direct input/output support by the file system.

Disk Cache Size Selector

Specifies size information for the disk cache buffer.

Display Manager Attribute Selectors

Specify feature availability for the Display Manager.

Display Manager Version Selector

Specifies version information for the Display Manager.

Drag Manager Attribute Selectors

Specify feature availability information for the Drag Manager.

Draw Sprocket Version Selectors

Specifies version information for Draw Sprocket.

Easy Access Selectors

Specify version and feature availability information for Easy Access.

Edition Manager Attribute Selectors

Specify feature availability for the Edition Manager.

Extension Table Version Selector

Specifies version information for the extension table.

File Mapping Attribute Selectors

Specify feature availability for file mapping.

File System Attribute Selectors

Specify feature availability for the file system.

File System Attribute Selectors for Mac OS 9

Specify feature availability for the file system for features introduced in Mac OS 9.

File System Manager Version Selector

Specifies version information for the File System Manager.

File System Transport Manager Attribute Selectors

Specify feature availability for the File System Transport Manager

Find By Content State Selectors

Specify state information for Find By Content.

Find By Content Version Selectors

Specify version information for Find By Content.

Find Folder Redirection Attribute Selector

Specifies feature availability information for Find Folder.

Finder Attribute Selectors

Specify feature availability for the Finder.

Floppy Driver Attribute Selectors

Specify feature availability information for the floppy disk drive.

Font Manager Attribute Selectors

Specify feature availability information for the Font Manager.

Folder Manager Attribute Selectors

Specify feature availability information for the Folder Manager.

FPU Type Selectors

Specify version and availability information for the type of floating-point unit installed.

Gestalt Manager Version Selectors

Specify Gestalt Manager version information.

Hardware Attribute Attribute Selectors

Specify feature availability information for hardware.

Hardware Icon Selector

Specifies icon family resource ID information for the computer hardware.

Hardware Vendor Selectors

Specify hardware vendor information.

Help Manager Attribute Selectors

Specify feature availability for the Apple Help Manager.

Icon Services Attribute Selectors

Specify feature availability for Icon Services.

Image Compression Manager Version Selector

Specifies the version of the Image Compression Manager.

Internal Display Location Selector

Specifies the slot number information for the internal display location.

Keyboard Selectors

Specify keyboard information.

Keyboard Selectors for Laptops

Specify laptop keyboard information.

Logical Page Size Selector

Specifies logical page size information.

Logical RAM Size Selector

Specifies logical random-access memory size information.

Low Memory Size Selector

Specifies information about the size of the low-memory area.

Machine Name String ID

Defines a machine name string ID.

Mailer Version Selector

Specifies version information for the OCE standard mailer.

Mailer Send LetterVersion Selector

Specifies version information for the OCE standard mailer’s send letter.

Media Bay Selectors

Specify information about media bay availability.

Memory Attribute Selectors

Specify feature availability information for memory.

Memory Mapping Attribute Selectors

Specify feature availability information for memory mapping.

Menu Manager Selectors in Mac OS 8.5

Specify version and feature availability information for the Menu Manager in Mac OS 8.5

Message Manager Version Selector

Specify version information for the Message Manager.

Miscellaneous Attribute Selectors

Specify feature availability information for miscellaneous pieces of the operating system or the hardware configuration.

Mixed Mode Manager Selectors

Specify version and feature availability information for the Mixed Mode Manager.

Mixed Mode Manager Version Selector

Specifies version information for the Mixed Mode Manager.

MMU Type Selectors

Specify information about the type of MMU installed.

Multiple Users State Selector

Specifies information about the multiple user state.

Name-Binding Protocol Attribute Selectors

Specify feature availability information for the standard name-binding protocol.

Name Registry Version Selector

Specifies the version of the name registry.

Native CPU Selectors

Specify the native CPU type or family.

Notification Manager Attribute Selectors

Specify feature availability information for the Notification Manager.

NuBus Location Selector

Specifies information about the NuBus slot connector locations.

NuBus Slot Count Selector

Specifies information about the number of NuBus slots.

OCE Toolbox Attribute Selectors

Specify feature availability for the OCE Toolbox.

OCE Toolbox Version Selectors

Specify version information for the OCE Toolbox.

Open Firmware Selector

Specifies version information for Open Firmware.

Open Firmware Safe Selectors

Specify feature availability for Open Firmware safe features.

Open Transport Selectors

Specify version and feature availability information for Open Transport.

Open Transport Network Setup Selectors

Specify feature availability and setup information for Open Transport networking.

Open Transport Network Version Selector

Specifies the version of the Open Transport network setup.

Open Transport Remote Access Selectors

Specify feature availability for Open Transport remote access.

Opent Transport Remote Access Version Selector

Specifies version information for Open Transport remote access.

Open Transport Version Selector

Specifies version information for Open Transport.

OS Trap Table Selector

Specifies base address information for the operating system trap dispatch table.

Parity Checking Attribute Selectors

Specify feature availability for parity checking.

PC Compatibility Card Selectors

Specify version and feature availability information for a PC-compatibility card.

PC Exchange Attribute Selectors

Specify feature availability information for PC Exchange.

Physical RAM Size Selector

Specifies information about the size of the physical RAM.

Pop-up Control Selector

Specify feature availability for pop-up controls.

Power Manager Attribute Selectors

Specify feature availability for the Power Manager.

Power Manager Version Selector

Specifies version information for the Power Manager.

PowerPC Attribute Selectors

Specify feature availability for PowerPC processors.

PowerPC Toolbox Attribute Selectors

Specify feature availability for the PowerPC Toolbox.

Preemptive Function Attribute Selectors

Specify feature availability information for preemptive system software functions.

Processor Clock Speed Selector

Specifies information about processor clock speed.

Processor Type Selector

Specifies information about the type of microprocessor.

Quadra Redefinitions

Specifies alternate names for MacQuadra constants.

QuickDraw 3D Attribute Selectors

Specify feature availability information for QuickDraw 3D.

Quick Draw 3D Version Selector

Specifies version information for QuickDraw 3D.

QuickDraw 3D Viewer Attribute Selectors

Specify feature availability information for QuickDraw 3D Viewer.

QuickDraw Attribute Selectors

Specify feature availability information for QuickDraw.

QuickDraw Version Selectors

Specify version information for QuickDraw.

QuickDraw GX Overall Version Selector

Specifies version information for the overall version of QuickDraw GX.

QuickDraw GX Printing Version Selector

Specifies version information for QuickDraw GX printing.

QuickDraw GX Version Selectors

Specify version information for QuickDraw GX.

QuickDraw GX Attribute Selectors

Specify feature availability information for QuickDraw GX.

QuickDraw Text Attribute Selectors

Specify feature availability information for QuickDraw Text.

QuickDraw Text Version Selectors

Specify version information for QuickDraw Text.

QuickTime VR Feature Selectors

Specify feature availability information for QuickTime VR.

QuickTime VR Version Selector

Specifies version information for QuickTime VR.

QuickTime Attribute Selectors

Specify feature availability information for QuickTime.

QuickTime Version Selectors

Specify version information for QuickTime.

QuickTime Conferencing Information Selector

Specifies information about QuickTime conferencing.

QuickTime Conferencing Selector

Specifies availability information for QuickTime conferencing.

QuickTime Streaming Attribute Selector

Specify feature availability information for QuickTime streaming.

QuickTime Streaming Version Selector

Specifies version information for QuickTime streaming.

RBV Address Selector

Specifies information about the RBV base address.

Realtime Manager Attribute Selectors

Specify feature availability information for the Realtime Manager.

Resource Manager Bug Fixes Attribute Selectors

Specify feature availability information for Resource Manager bug fixes.

Resource Manager Attribute Selectors

Specify feature availability information for the Resource Manager.

ROM Size Selector

Specifies information about ROM size information.

ROM Version Selector

Specifies ROM version information.

SCC Read Address Selector

Specifies information about the base address for reading SCC.

SCC Write Address Selector

Specifies information about the base address for writing SCC.

SCSI Manager Attribute Selectors

Specify feature availability information for the SCSI Manager.

Scrap Manager Selectors

Specify version and feature availability information for the Scrap Manager.

Screen Capture Selectors

Specifies location information for screen capture.

Script Manager Version Selector

Specifies version information for the Script Manager.

Script Systems Count Selector

Specifies information about the number of active script systems.

Serial Hardware Attribute Selectors

Specify serial hardware attributes.

Serial Port Arbitrator Attribute Selectors

Specify feature availability information for serial port arbitration.

Settings Manager Attribute Selectors

Specify feature availability information for the Settings Manager.

Settings Manager Location Selector

Specifies location information for the Settings Manager.

Settings Manager Version Selector

Specifies version information for the Settings Manager.

Shutdown Attribute Selectors

Specify shutdown attributes.

Single Window Mode Selectors

Specify single-window modes.

Slot Attribute Selectors

Specify feature availability for slots.

Slot Number Selector

Specifies information about the first physical slot in the computer.

Software Vendor Codes

Specify codes for software vendors.

Sound Manager Attribute Selectors

Specify feature availability information for the Sound Manager.

Speech Manager Attribute Selectors

Specify feature availability information for the Speech Manager.

Speech Recognition Version Selector

Specifies version information for the Speech Recognition Manager.

Speech Recognition Manager Attribute Selectors

Specify feature availability information for the Speech Recognition Manager.

Standard Directory Find Panel Selector

Specifies version information for the standard directory find panel.

Standard Directory Prompt Panel Selector

Specifies version information for the standard directory prompt panel.

Standard Directory Version Selector

Specifies version information for the standard directory.

Startup Disk Attribute Selectors

Specify feature availability information for the startup disk.

Standard File Attribute Selectors

Specify feature availability information for Standard File.

System Architecture Selectors

Specify the native system architecture.

System Update Version Selector

Indicates version information for system updates.

System Version Selectors

Indicates operating system version information.

Telephone Manager Attribute Selectors

Specify feature availability information for the Telephone Manager.

Terminal Manager Attribute Selectors

Specify feature availability information for the Terminal Manager.

TextEdit Attribute Selectors

Specify feature availability information for TextEdit.

TextEdit Version Selectors

Specify version information for TextEdit.

Text Services Manager Attribute Selectors

Specify feature availability information for the Text Services Manager.

Text Services Manager Version Selectors

Specifies version information for the Text Services Manager.

Thread Manager Attribute Selectors

Specify feature availability information for the Thread Manager.

Time Manager Version Selectors

Specify version information for the Time Manager.

Toolbox Trap Table Selector

Specifies base address information for the Toolbox trap dispatch table.

Toolbox Trap Table (Second Half) Selector

Specifies address information for the second half of the Toolbox trap table.

Translation Manager Attribute Selectors

Specify feature availability information for the Translation Manager.

TSME Version Selector

Specifies version information for the Text Services Manager integrated with TextEdit.

TSMTE Attribute Selectors

Specify feature availability information for TSMTE.

TSMTE Version Selectors

Specify version information for TSMTE.

TV Tuner Attribute Selectors

Specifies feature availability information for the TV tuner.

UDF Selector

Specifies support information for communication between implementations of UDF .

USB Attribute Selectors

Specifies feature availability information for USB.

USB Printer Sharing Version Selectors

Specify version information for USB printer sharing.

USB Version Selector

Specifies version information for USB.

VIA1 Base Address Selector

Specifies base address information for VIA 1.

VIA2 Base Address Selector

Specifies base address information for VIA 2.

Virtual Memory Manager Attribute Selectors

Specify feature availability information for the Virtual Memory Manager.

Virtual Memory Backing Store Selector

Specifies file reference number information for the VM backing store.

Virtual Memory Information Type Selectors

Specifies information about the VM type.

Win32 Attribute Selectors

Specify feature availability information for Win32.

Window Manager Attribute Selectors

Specify feature availability information for the Window Manager.

WorldScriptII Version Selectors

Specify version information for WorldScript II.

Result Codes

The most common result codes returned by the Gestalt Manager are listed below.

gestaltUnknownErr

Specifies an unknown error.

gestaltUndefSelectorErr

Specifies an undefined selector was passed to the Gestalt Manager.

gestaltDupSelectorErr

Specifies you tried to add an entry that already existed.

gestaltLocationErr

Specifies the gestalt function ptr was not in the system heap.

See Also

Managers

Alias Manager

Create and resolve alias records that describe file system objects such as files, directories, and volumes.

Component Manager

Find and use components in your app or add custom components to system-provided services, such as QuickTime and Core Audio.

File Manager

Interact with files, folders, and volumes.

Text Encoding Conversion Manager

Handle text encoding conversion between apps and transfer text across different platforms.