~ubuntu-branches/ubuntu/raring/wxwidgets2.8/raring

« back to all changes in this revision

Viewing changes to src/tiff/tif_extension.c

  • Committer: Package Import Robot
  • Author(s): Stéphane Graber
  • Date: 2012-01-07 13:59:25 UTC
  • mfrom: (1.1.9) (5.1.10 sid)
  • Revision ID: package-import@ubuntu.com-20120107135925-2601miy9ullcon9j
Tags: 2.8.12.1-6ubuntu1
* Resync from Debian, changes that were kept:
  - debian/rules: re-enable mediactrl. This allows libwx_gtk2u_media-2.8 to be
    built, as this is required by some applications (LP: #632984)
  - debian/control: Build-dep on libxt-dev for mediactrl.
  - Patches
    + fix-bashism-in-example
* Add conflict on python-wxgtk2.8 (<< 2.8.12.1-6ubuntu1~) to python-wxversion
  to guarantee upgrade ordering when moving from pycentral to dh_python2.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* $Header$ */
2
 
 
3
 
/*
4
 
 * Copyright (c) 1988-1997 Sam Leffler
5
 
 * Copyright (c) 1991-1997 Silicon Graphics, Inc.
6
 
 *
7
 
 * Permission to use, copy, modify, distribute, and sell this software and 
8
 
 * its documentation for any purpose is hereby granted without fee, provided
9
 
 * that (i) the above copyright notices and this permission notice appear in
10
 
 * all copies of the software and related documentation, and (ii) the names of
11
 
 * Sam Leffler and Silicon Graphics may not be used in any advertising or
12
 
 * publicity relating to the software without the specific, prior written
13
 
 * permission of Sam Leffler and Silicon Graphics.
14
 
 * 
15
 
 * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
16
 
 * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
17
 
 * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
18
 
 * 
19
 
 * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
20
 
 * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
21
 
 * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
22
 
 * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
23
 
 * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
24
 
 * OF THIS SOFTWARE.
25
 
 */
26
 
 
27
 
/*
28
 
 * TIFF Library.
29
 
 *
30
 
 * Various routines support external extension of the tag set, and other
31
 
 * application extension capabilities. 
32
 
 */
33
 
 
34
 
#include "tiffiop.h"
35
 
#include <assert.h>
36
 
 
37
 
int TIFFGetTagListCount( TIFF *tif )
38
 
 
39
 
{
40
 
    TIFFDirectory* td = &tif->tif_dir;
41
 
    
42
 
    return td->td_customValueCount;
43
 
}
44
 
 
45
 
ttag_t TIFFGetTagListEntry( TIFF *tif, int tag_index )
46
 
 
47
 
{
48
 
    TIFFDirectory* td = &tif->tif_dir;
49
 
 
50
 
    if( tag_index < 0 || tag_index >= td->td_customValueCount )
51
 
        return (ttag_t) -1;
52
 
    else
53
 
        return td->td_customValues[tag_index].info->field_tag;
54
 
}
55
 
 
56
 
/*
57
 
** This provides read/write access to the TIFFTagMethods within the TIFF
58
 
** structure to application code without giving access to the private
59
 
** TIFF structure.
60
 
*/
61
 
TIFFTagMethods *TIFFAccessTagMethods( TIFF *tif )
62
 
 
63
 
{
64
 
    return &(tif->tif_tagmethods);
65
 
}
66
 
 
67
 
void *TIFFGetClientInfo( TIFF *tif, const char *name )
68
 
 
69
 
{
70
 
    TIFFClientInfoLink *link = tif->tif_clientinfo;
71
 
 
72
 
    while( link != NULL && strcmp(link->name,name) != 0 )
73
 
        link = link->next;
74
 
 
75
 
    if( link != NULL )
76
 
        return link->data;
77
 
    else
78
 
        return NULL;
79
 
}
80
 
 
81
 
void TIFFSetClientInfo( TIFF *tif, void *data, const char *name )
82
 
 
83
 
{
84
 
    TIFFClientInfoLink *link = tif->tif_clientinfo;
85
 
 
86
 
    /*
87
 
    ** Do we have an existing link with this name?  If so, just
88
 
    ** set it.
89
 
    */
90
 
    while( link != NULL && strcmp(link->name,name) != 0 )
91
 
        link = link->next;
92
 
 
93
 
    if( link != NULL )
94
 
    {
95
 
        link->data = data;
96
 
        return;
97
 
    }
98
 
 
99
 
    /*
100
 
    ** Create a new link.
101
 
    */
102
 
 
103
 
    link = (TIFFClientInfoLink *) _TIFFmalloc(sizeof(TIFFClientInfoLink));
104
 
    assert (link != NULL);
105
 
    link->next = tif->tif_clientinfo;
106
 
    link->name = (char *) _TIFFmalloc(strlen(name)+1);
107
 
    assert (link->name != NULL);
108
 
    strcpy(link->name, name);
109
 
    link->data = data;
110
 
 
111
 
    tif->tif_clientinfo = link;
112
 
}