Grok 10.0.1
PLCache.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2016-2022 Grok Image Compression Inc.
3 *
4 * This source code is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Affero General Public License, version 3,
6 * as published by the Free Software Foundation.
7 *
8 * This source code is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Affero General Public License for more details.
12 *
13 * You should have received a copy of the GNU Affero General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18#include <vector>
19#include <map>
20
21//#define ENABLE_PACKET_CACHE
22
23namespace grk
24{
26{
27 public:
29 virtual ~PLCache();
32 void deleteMarkers(void);
33 bool next(PacketInfo** p);
34 void rewind(void);
35
36 private:
38#ifdef ENABLE_PACKET_CACHE
39 SequentialPtrCache<PacketInfo> packetInfoCache;
40#endif
42};
43
44} // namespace grk
Definition: PLCache.h:26
void deleteMarkers(void)
Definition: PLCache.cpp:40
virtual ~PLCache()
Definition: PLCache.cpp:22
bool next(PacketInfo **p)
Definition: PLCache.cpp:46
PLMarkerMgr * createMarkers(IBufferedStream *strm)
Definition: PLCache.cpp:27
void rewind(void)
Definition: PLCache.cpp:76
PLMarkerMgr * pltMarkers
Definition: PLCache.h:37
CodingParams * cp_
Definition: PLCache.h:41
PLCache(CodingParams *cp)
Definition: PLCache.cpp:21
PLMarkerMgr * getMarkers(void)
Definition: PLCache.cpp:35
Definition: SequentialCache.h:27
Copyright (C) 2016-2022 Grok Image Compression Inc.
Definition: ICacheable.h:20
Coding parameters.
Definition: CodingParams.h:245
Definition: IBufferedStream.h:20
Definition: PLMarkerMgr.h:30
Definition: LengthCache.h:150