Return pointers for all active Objects


This function returns a KeyMap holding currently active AST Object pointers. Each entry in the KeyMap will have a key that is an AST class name such as " FrameSet" , " SkyFrame" , " ZoomMap" , etc. The value of the entry will be a 1-dimensional list of pointers for objects of the same class. Note, the returned pointers should NOT be annulled when they are no longer needed.

The pointers to return in the KeyMap may be restricted either by class or by context level using the function arguments.


AstKeyMap astActiveObjects( const char class, int subclass, int current )


If NULL, then the returned KeyMap will contain pointers ofr Objects of all classes. If not NULL, then " class" should be a pointer to a null-terminated string holding the name of an AST class. The returned KeyMap will contain pointers only for the specified class. See also " subclass" .
A Boolean flag indicating if all subclasses of the class specified by " class" should be included in the returned KeyMap. If zero, then subclass objects are not returned. Otherwise they are returned. The supplied " subclass" value is ignored if " class" is NULL.
A Boolean flag indicating if the returned list of pointers should be restricted to pointers issued within the current AST object context (see astBegin and astEnd).

Returned Value

A pointer to a new KeyMap holding the required object pointers. They KeyMap pointer should be annulled when it is no longer needed, but the object pointers within the KeyMap should not be annulled. A NULL pointer is returned if an error has occurred prior to calling this function.

The values stored in the KeyMap should be accessed as generic C pointers using the KeyMap " P" data type (e.g. using function astMapGetlemP etc).