Twitch SDK (Internal)
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
ttv::chat::ChatUserBadges Class Reference

#include <chatuserbadges.h>

Inheritance diagram for ttv::chat::ChatUserBadges:
ttv::UserComponent ttv::Component ttv::IComponent

Public Types

enum  State { State::Uninitialized, State::Initialized, State::ShuttingDown, State::Inert }
 

Public Member Functions

 ChatUserBadges (const std::shared_ptr< User > &user)
 
virtual ~ChatUserBadges ()
 
virtual std::string GetLoggerName () const override
 
std::string GetBadgesMessageTag (ChannelId channelId)
 
void SetBadgesMessageTag (ChannelId channelId, const std::string &badgesMessageTag)
 
virtual TTV_ErrorCode Initialize () override
 
virtual void SetTaskRunner (std::shared_ptr< TaskRunner > taskRunner)
 
std::shared_ptr< TaskRunnerGetTaskRunner ()
 
virtual State GetState () const override
 
virtual void Update () override
 
virtual TTV_ErrorCode Shutdown () override
 

Static Public Member Functions

static std::string GetComponentName ()
 

Protected Member Functions

virtual void OnUserLogInComplete (TTV_ErrorCode ec)
 
virtual void OnUserLogOutComplete (TTV_ErrorCode ec)
 
virtual void OnUserInfoFetchComplete (TTV_ErrorCode ec)
 
virtual void OnUserAuthenticationIssue (std::shared_ptr< const OAuthToken > oauthToken, TTV_ErrorCode ec)
 
virtual void CompleteShutdown () override
 
void Log (TTV_MessageLevel level, const char *format,...)
 
TTV_ErrorCode StartTask (std::shared_ptr< Task > task)
 
void CompleteTask (Task *task)
 
bool IsTaskRunning (Task *task) const
 
virtual void SetState (State state)
 
virtual void SetClientState (State state)
 
virtual void SetServerState (State state)
 
virtual bool CheckShutdown ()
 

Protected Attributes

std::weak_ptr< UsermUser
 
bool mOAuthIssue
 Whether or not the internal updates of the component are on hold because of an issue with the OAuth token. More...
 
ClientServerValue< StatemState
 
std::shared_ptr< TaskRunnermTaskRunner
 
std::vector< std::shared_ptr< Task > > mRunningTasks
 
std::mutex mTaskMutex
 
uint64_t mShutdownTimeMilliseconds
 

Private Attributes

std::unordered_map< ChannelId, std::string > mBadges
 The mapping of channel ID to the badges message tag. More...
 

Detailed Description

Stores the IRC v3 message tag for user badges per channel.

Member Enumeration Documentation

◆ State

enum ttv::IComponent::State
stronginherited
Enumerator
Uninitialized 
Initialized 
ShuttingDown 
Inert 

The component doesn't require shutting down.

Constructor & Destructor Documentation

◆ ChatUserBadges()

ttv::chat::ChatUserBadges::ChatUserBadges ( const std::shared_ptr< User > &  user)

◆ ~ChatUserBadges()

virtual ttv::chat::ChatUserBadges::~ChatUserBadges ( )
virtual

Member Function Documentation

◆ CheckShutdown()

virtual bool ttv::Component::CheckShutdown ( )
protectedvirtualinherited

◆ CompleteShutdown()

virtual void ttv::UserComponent::CompleteShutdown ( )
overrideprotectedvirtualinherited

◆ CompleteTask()

void ttv::Component::CompleteTask ( Task task)
protectedinherited

◆ GetBadgesMessageTag()

std::string ttv::chat::ChatUserBadges::GetBadgesMessageTag ( ChannelId  channelId)

◆ GetComponentName()

static std::string ttv::chat::ChatUserBadges::GetComponentName ( )
inlinestatic

◆ GetLoggerName()

virtual std::string ttv::chat::ChatUserBadges::GetLoggerName ( ) const
overridevirtual

Implements ttv::Component.

◆ GetState()

virtual State ttv::Component::GetState ( ) const
overridevirtualinherited

Implements ttv::IComponent.

◆ GetTaskRunner()

std::shared_ptr<TaskRunner> ttv::Component::GetTaskRunner ( )
inlineinherited

◆ Initialize()

virtual TTV_ErrorCode ttv::UserComponent::Initialize ( )
overridevirtualinherited

◆ IsTaskRunning()

bool ttv::Component::IsTaskRunning ( Task task) const
protectedinherited

◆ Log()

void ttv::UserComponent::Log ( TTV_MessageLevel  level,
const char *  format,
  ... 
)
protectedinherited

◆ OnUserAuthenticationIssue()

virtual void ttv::UserComponent::OnUserAuthenticationIssue ( std::shared_ptr< const OAuthToken oauthToken,
TTV_ErrorCode  ec 
)
protectedvirtualinherited

◆ OnUserInfoFetchComplete()

virtual void ttv::UserComponent::OnUserInfoFetchComplete ( TTV_ErrorCode  ec)
protectedvirtualinherited

◆ OnUserLogInComplete()

virtual void ttv::UserComponent::OnUserLogInComplete ( TTV_ErrorCode  ec)
protectedvirtualinherited

◆ OnUserLogOutComplete()

virtual void ttv::UserComponent::OnUserLogOutComplete ( TTV_ErrorCode  ec)
protectedvirtualinherited

◆ SetBadgesMessageTag()

void ttv::chat::ChatUserBadges::SetBadgesMessageTag ( ChannelId  channelId,
const std::string &  badgesMessageTag 
)

◆ SetClientState()

virtual void ttv::Component::SetClientState ( State  state)
protectedvirtualinherited

◆ SetServerState()

virtual void ttv::Component::SetServerState ( State  state)
protectedvirtualinherited

◆ SetState()

virtual void ttv::Component::SetState ( State  state)
protectedvirtualinherited

◆ SetTaskRunner()

virtual void ttv::Component::SetTaskRunner ( std::shared_ptr< TaskRunner taskRunner)
virtualinherited

◆ Shutdown()

virtual TTV_ErrorCode ttv::Component::Shutdown ( )
overridevirtualinherited

◆ StartTask()

TTV_ErrorCode ttv::Component::StartTask ( std::shared_ptr< Task task)
protectedinherited

◆ Update()

virtual void ttv::Component::Update ( )
overridevirtualinherited

Member Data Documentation

◆ mBadges

std::unordered_map<ChannelId, std::string> ttv::chat::ChatUserBadges::mBadges
private

The mapping of channel ID to the badges message tag.

◆ mOAuthIssue

bool ttv::UserComponent::mOAuthIssue
protectedinherited

Whether or not the internal updates of the component are on hold because of an issue with the OAuth token.

◆ mRunningTasks

std::vector<std::shared_ptr<Task> > ttv::Component::mRunningTasks
protectedinherited

◆ mShutdownTimeMilliseconds

uint64_t ttv::Component::mShutdownTimeMilliseconds
protectedinherited

◆ mState

ClientServerValue<State> ttv::Component::mState
protectedinherited

◆ mTaskMutex

std::mutex ttv::Component::mTaskMutex
mutableprotectedinherited

◆ mTaskRunner

std::shared_ptr<TaskRunner> ttv::Component::mTaskRunner
protectedinherited

◆ mUser

std::weak_ptr<User> ttv::UserComponent::mUser
protectedinherited

The documentation for this class was generated from the following file: