This file is indexed.

/usr/share/doc/libstarlink-ast-doc/node35.html is in libstarlink-ast-doc 8.6.2+dfsg-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<!--Converted with LaTeX2HTML 2008 (1.71)
original version by:  Nikos Drakos, CBLU, University of Leeds
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>The Object Hierarchy</TITLE>
<META NAME="description" CONTENT="The Object Hierarchy">
<META NAME="keywords" CONTENT="sun211">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">

<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="sun211.css">

<LINK REL="next" HREF="node36.html">
<LINK REL="previous" HREF="node34.html">
<LINK REL="up" HREF="node32.html">
<LINK REL="next" HREF="node36.html">
</HEAD>

<BODY >

<DIV CLASS="navigation"><!--Navigation Panel-->
<A NAME="tex2html779"
  HREF="node36.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
 SRC="/usr/share/latex2html/icons/next.png"></A> 
<A NAME="tex2html777"
  HREF="node32.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
 SRC="/usr/share/latex2html/icons/up.png"></A> 
<A NAME="tex2html771"
  HREF="node34.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
 SRC="/usr/share/latex2html/icons/prev.png"></A>   
<BR>
<B> Next:</B> <A NAME="tex2html780"
  HREF="node36.html">Displaying Objects</A>
<B> Up:</B> <A NAME="tex2html778"
  HREF="node32.html">An AST Object Primer</A>
<B> Previous:</B> <A NAME="tex2html772"
  HREF="node34.html">Object Creation and Pointers</A>
<BR>
<BR></DIV>
<!--End of Navigation Panel-->

<H2><A NAME="SECTION00043000000000000000"></A><A NAME="ss:objecthierarchy"></A>
<BR>
The Object Hierarchy
</H2>

<P>
Now that we have created our first ZoomMapZoomMap, let us examine how it
relates to other kinds of ObjectObject before investigating what we can do
with it.

<P>
We have so far indicated that a ZoomMap is a kind of Object and have
also mentioned that it is a kind of MappingMapping as well. These statements
can be represented very simply using the following hierarchy:

<P>
<SMALL CLASS="SMALL">
<BR>
<IMG
 WIDTH="108" HEIGHT="53" ALIGN="BOTTOM" BORDER="0"
 SRC="img35.png"
 ALT="\begin{terminalv}
Object
Mapping
ZoomMap
\end{terminalv}">
<BR>
</SMALL>
<P>
which is a way of stating that a ZoomMap is a special class of
Mapping, while a Mapping, in turn, is a special class of Object.  This
is exactly like saying that an Oak is a special form of Tree, while a
Tree, in turn, is a special form of Plant. This may seem almost
trivial, but before you turn to read something less dull, be assured
that it is a very important idea to keep in mind in what follows.

<P>
If we look at some of the other Objects used by the AST library, we
can see how these are all related in a similar way (don't worry about
what they do at this stage):
<A NAME="ss:mappinghierarchy"></A>
<P>
<SMALL CLASS="SMALL">
<BR>
<IMG
 WIDTH="141" HEIGHT="183" ALIGN="BOTTOM" BORDER="0"
 SRC="img36.png"
 ALT="\begin{terminalv}
Object
Mapping
Frame
FrameSet
Plot
UnitMap
ZoomMap
Channel
FitsChan
XmlChan
\end{terminalv}">
<BR>
</SMALL>
<P>
Notice that there are several different types of Mapping available
(<SPAN  CLASS="textit">i.e.</SPAN> there are classes of Object indented beneath the
``Mapping'' heading) and, in addition, other types of Object which are
not Mappings--Channels for instance (which are at the same
hierarchical level as Mappings).

<P>
The most specialised Object we have shown here is the PlotPlot (which we
will not discuss in detail until &#167;<A HREF="node194.html#ss:plots">21</A>). As you can see, a
Plot is a FrameSetFrameSet... and a FrameFrame... and a Mapping... and,
like everything else, ultimately an Object.

<P>
What this means is that you can use a Plot not only for its own
specialised behaviour, but also whenever any of these other
less-specialised classes of Object is called for. The general rule is
that an Object of a particular class may substitute for any of the
classes appearing above it in this hierarchy. The Object is then said
to <SPAN  CLASS="textit">inherit</SPAN> the behaviour of these higher classes. We can
therefore use our ZoomMap whenever a ZoomMap, a Mapping or an Object
is called for.

<P>
Sometimes, this can lead to some spectacular short-cuts by avoiding
the need to break large Objects down in order to access their
components. With some practice and a little lateral thinking you
should soon be able to spot opportunities for this.

<P>
You can find the full <SPAN  CLASS="textit">class hierarchy</SPAN>, as this is called, for
the AST library in Appendix&nbsp;<A HREF="node214.html#ss:classhierarchy">A</A> and you may need to
refer to it occasionally until you are familiar with the classes you
need to use.

<P>

<DIV CLASS="navigation"><HR>
<!--Navigation Panel-->
<A NAME="tex2html779"
  HREF="node36.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
 SRC="/usr/share/latex2html/icons/next.png"></A> 
<A NAME="tex2html777"
  HREF="node32.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
 SRC="/usr/share/latex2html/icons/up.png"></A> 
<A NAME="tex2html771"
  HREF="node34.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
 SRC="/usr/share/latex2html/icons/prev.png"></A>   
<BR>
<B> Next:</B> <A NAME="tex2html780"
  HREF="node36.html">Displaying Objects</A>
<B> Up:</B> <A NAME="tex2html778"
  HREF="node32.html">An AST Object Primer</A>
<B> Previous:</B> <A NAME="tex2html772"
  HREF="node34.html">Object Creation and Pointers</A></DIV>
<!--End of Navigation Panel-->

</BODY>
</HTML>