Gopher2600/thumbnailer/doc.go
JetSetIlly 5885c9e776 fixed race condition in instance caused by timeline
thumbnailer was running in a different goroutine to that which the state
being used to generate the thumbnail was create in. there's no way of
making that safe except through mutexes or similar. that's too much
overhead for something as inconsequential as a timeline thumbnailer

timeline thumbnailer now runs in the same goroutine as the main
emulation, bypassing these problems. scheduling of when thumbnailer runs
is now done manually

"Live" TIA Revision values replaced with atomics. small performance
improvement
2022-04-04 21:27:56 +01:00

26 lines
1.2 KiB
Go

// This file is part of Gopher2600.
//
// Gopher2600 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.
//
// Gopher2600 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 Gopher2600. If not, see <https://www.gnu.org/licenses/>.
// Package thumbnailer can be used to create either a series of thumbnail
// images or a single thumbnail image with the CreateFromLoader() and
// SingleFrameFromRewindState() functions respsectively.
//
// The CreateFromLodaer() function will run asynchronously and is good for
// generating just the images from a new emulation.
//
// The SingleFrameFromRewindState() function meanwhile, is more limited and is
// used to generate a single TV frame starting from the supplied rewind state.
package thumbnailer