Kodi Documentation 23.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
ContentGeometryRecord.cpp File Reference
#include "ContentGeometryRecord.h"
#include "filesystem/File.h"
#include "utils/Archive.h"
#include "utils/StringUtils.h"
#include "utils/XBMCTinyXML.h"
#include <algorithm>
#include <cmath>
#include <sys/stat.h>

Namespaces

namespace  KODI
 
namespace  KODI::VIDEO
 
namespace  KODI::VIDEO::GEOMETRY
 

Functions

FileIdentity KODI::VIDEO::GEOMETRY::GetFileIdentity (const std::string &path)
 
float KODI::VIDEO::GEOMETRY::StoredAspect (float aspect)
 aspect rounded to the two decimals a ratio is stored and written at.
 
std::string KODI::VIDEO::GEOMETRY::EncodeContentAspects (const std::vector< float > &aspects)
 The ratios as "2.35;1.78".
 
std::vector< float > KODI::VIDEO::GEOMETRY::DecodeContentAspects (const std::string &packed)
 Read EncodeContentAspects() back, skipping anything that is not a ratio.
 
ContentGeometryState KODI::VIDEO::GEOMETRY::StateOf (const ContentGeometryRecord &record)
 STALE or VALID for a record in hand - MISSING is a lookup's answer, not a record's.
 
float KODI::VIDEO::GEOMETRY::WidestAspect (const ContentGeometryRecord &record)
 The widest ratio the record holds, which the masking opens to. Zero with no reading.
 
bool KODI::VIDEO::GEOMETRY::NeedsContentGeometry (const std::optional< ContentGeometryRecord > &stored, const FileIdentity &identity)
 Whether the file still needs measuring: nothing is stored, or what is stored is superseded or describes a different file. A record that found nothing counts as done until the file changes.
 
void KODI::VIDEO::GEOMETRY::Archive (CArchive &ar, ContentGeometryRecord &record)
 Read or write the record on ar.
 
void KODI::VIDEO::GEOMETRY::SaveContentGeometryXML (TiXmlNode &movie, const ContentGeometryRecord &record)
 Write the ratios under movie as a <contentgeometry> element, nothing when the record has no reading.
 
std::optional< ContentGeometryRecord > KODI::VIDEO::GEOMETRY::LoadContentGeometryXML (const TiXmlElement &movie)
 Read SaveContentGeometryXML() back. Nothing when movie names no ratio.