Grok 10.0.5
PLCache.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2016-2023 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:
28 PLCache(CodingParams* cp);
29 virtual ~PLCache();
30 PLMarkerMgr* createMarkers(BufferedStream* strm);
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
41 CodingParams* cp_;
42};
43
44} // namespace grk
CodingParams * cp
Definition PacketManager.h:95
Definition PLCache.h:26
void deleteMarkers(void)
bool next(PacketInfo **p)
PLMarkerMgr * createMarkers(BufferedStream *strm)
void rewind(void)
PLMarkerMgr * pltMarkers
Definition PLCache.h:37
CodingParams * cp_
Definition PLCache.h:41
PLCache(CodingParams *cp)
PLMarkerMgr * getMarkers(void)
virtual ~PLCache()
Definition SequentialCache.h:27
Copyright (C) 2016-2023 Grok Image Compression Inc.
Definition ICacheable.h:20
Definition PLMarkerMgr.h:30
Definition LengthCache.h:150