Barracuda Application Server C/C++ Reference
NO
IoIntfZipReader.h
1/*
2 * ____ _________ __ _
3 * / __ \___ ____ _/ /_ __(_)___ ___ ___ / / ____ ____ _(_)____
4 * / /_/ / _ \/ __ `/ / / / / / __ `__ \/ _ \/ / / __ \/ __ `/ / ___/
5 * / _, _/ __/ /_/ / / / / / / / / / / / __/ /___/ /_/ / /_/ / / /__
6 * /_/ |_|\___/\__,_/_/ /_/ /_/_/ /_/ /_/\___/_____/\____/\__, /_/\___/
7 * /____/
8 *
9 * Barracuda Embedded Web-Server
10 *
11 ****************************************************************************
12 * HEADER
13 *
14 * $Id: IoIntfZipReader.h 4915 2021-12-01 18:26:55Z wini $
15 *
16 * COPYRIGHT: Real Time Logic LLC, 2006-2008
17 *
18 * This software is copyrighted by and is the sole property of Real
19 * Time Logic LLC. All rights, title, ownership, or other interests in
20 * the software remain the property of Real Time Logic LLC. This
21 * software may only be used in accordance with the terms and
22 * conditions stipulated in the corresponding license agreement under
23 * which the software has been supplied. Any unauthorized use,
24 * duplication, transmission, distribution, or disclosure of this
25 * software is expressly forbidden.
26 *
27 * This Copyright notice may not be removed or modified without prior
28 * written consent of Real Time Logic LLC.
29 *
30 * Real Time Logic LLC. reserves the right to modify this software
31 * without notice.
32 *
33 * http://www.realtimelogic.com
34 ****************************************************************************
35 *
36 *
37 */
38#ifndef __IoIntfZipReader_h
39#define __IoIntfZipReader_h
40
41#include <ZipFileIterator.h>
42#include <IoIntf.h>
43
49typedef struct IoIntfZipReader
50#ifdef __cplusplus
51: public ZipReader
52{
54
59 IoIntfZipReader(IoIntf* io, const char* pathName);
60
64
67 int close();
68
71 int getECode();
72
73 private:
74#else
75{
76 ZipReader reader;
77#endif
78 U32 currentOffset;
79 IoIntf_SeekAndRead seekAndReadFp;
80 ResIntfPtr fp;
81 int lastECode;
83
84#ifdef __cplusplus
85extern "C" {
86#endif
87BA_API void IoIntfZipReader_constructor(IoIntfZipReader* o,
88 IoIntf* io,
89 const char* pathName);
90BA_API int IoIntfZipReader_close(IoIntfZipReader* o);
91#define IoIntfZipReader_destructor(o) IoIntfZipReader_close(o);
92#define IoIntfZipReader_getECode(o) (o)->lastECode
93#ifdef __cplusplus
94}
95inline IoIntfZipReader::IoIntfZipReader(IoIntf* io, const char* pathName) {
96 IoIntfZipReader_constructor(this, io, pathName); }
98 IoIntfZipReader_destructor(this); }
100 return IoIntfZipReader_close(this); }
101
103 return IoIntfZipReader_getECode(this); }
104#endif
105
106
107#endif
The IoIntfZipReader, which implements the abstract ZipReader interface, makes it possible for a ZipIo...
Definition: IoIntfZipReader.h:52
int getECode()
Returns the last error code, if any.
Definition: IoIntfZipReader.h:102
~IoIntfZipReader()
The destructor closes the file connection.
Definition: IoIntfZipReader.h:97
int close()
Close the file connection.
Definition: IoIntfZipReader.h:99
The IoIntf class specifies an abstract file API, implementations include ZipIo, DiskIo,...
Definition: IoIntf.h:377
Abstract interface class for reading a ZipFile.
Definition: ZipFileIterator.h:72