#ifndef DIRECTORY_H #define DIRECTORY_H #include #include #include #include #include #include #include #include #include #include #include #include "XmlObject.h" #include "MediaContainer.h" #include "viewGridNavigator.h" #include "PlexServer.h" using Poco::XML::DOMParser; using Poco::XML::Document; using Poco::XML::NodeIterator; using Poco::XML::NodeFilter; using Poco::XML::Node; using Poco::XML::AutoPtr; using Poco::Exception; namespace plexclient { class MediaContainer; class Directory: private XmlObject, public cGridElement { public: Directory(Poco::XML::Node* pNode, PlexServer* Server, MediaContainer* parent); public: bool m_bAllowSync; int m_iIndex; // Season, Episode number int m_iYear; int m_iLeafCount; // Total number of Episodes int m_iViewedLeafCount; // Watched Episodes int m_iChildCount; // Number of Seasons double m_fRating; std::string m_sSummary; std::string m_sParentSummary; std::string m_sTitle; std::string m_sTitle1; std::string m_sTitle2; std::string m_sParentTitle; std::string m_sComposite; std::string m_sLanguage; std::string m_sUuid; std::string m_sArt; std::string m_sThumb; std::string m_sStudio; Poco::Timestamp m_tUpdatedAt; Poco::Timestamp m_tCreatedAt; std::string m_sKey; std::vector m_vGenre; std::vector m_vRole; MediaType m_eType; PlexServer* m_pServer; MediaContainer* m_pParent; virtual std::string GetTitle(); std::string ArtUri(); std::string ThumbUri(); // gridElement virtual void AddTokens(std::shared_ptr grid, bool clear = true, std::function OnCached = NULL); }; } #endif // DIRECTORY_H