summaryrefslogtreecommitdiffstats
path: root/compression/tilecompnone.hh
blob: 1c0ae3aace8153ab08d654b6e33a4d300c984980 (plain)
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
/*
* This file is part of rasdaman community.
*
* Rasdaman community is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Rasdaman community is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with rasdaman community.  If not, see <http://www.gnu.org/licenses/>.
*
* Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann /
rasdaman GmbH.
*
* For more information please see <http://www.rasdaman.org>
* or contact Peter Baumann via <baumann@rasdaman.com>.
/
/**
 * INCLUDE: tilecompnone.hh
 *
 * MODULE:  compression
 * CLASS:   r_Tile_Comp_None
 *
 * COMMENTS:
 *
*/


#ifndef _R_TILE_COMP_NONE_HH_
#define _R_TILE_COMP_NONE_HH_

#include "compression/tilecompression.hh"


//@ManMemo: Module {\bf compression}

/*@Doc:
  Tile compression for no compression. This should normally not be used,
  but in some cases it's required for cleaner modelling (e.g. an unsupported
  data format is requested which is interpreted as uncompressed data).
*/

class r_Tile_Comp_None : public r_Tile_Compression
{
  public:
  /// constructor
  r_Tile_Comp_None( const r_Minterval &dom, const r_Base_Type *type );
  /// copy constructor
  r_Tile_Comp_None( const r_Tile_Comp_None &src );
  /// destructor
  ~r_Tile_Comp_None( void );
  /// compress function
  virtual void *compress( const void *data, r_ULong &size, const char *options=NULL );
  /// decompress function
  virtual void *decompress( const void *data, r_ULong size, const char *options=NULL );
  /// identification
  const char *get_name( void ) const;
  r_Data_Format get_data_format( void ) const;
  /// create a copy
  r_Tile_Compression *clone( void ) const;
};

#endif