Diag-Client-Lib
Public Member Functions | Private Attributes | List of all members
diag::client::conversation_state_impl::ConversationStateImpl Class Reference

#include <dm_conversation_state_impl.h>

Public Member Functions

 ConversationStateImpl ()
 
 ~ConversationStateImpl ()=default
 
auto GetConversationStateContext () noexcept -> StateContext< ConversationState > &
 

Private Attributes

std::unique_ptr< StateContext< ConversationState > > conversation_state_
 

Detailed Description

Definition at line 28 of file dm_conversation_state_impl.h.

Constructor & Destructor Documentation

◆ ConversationStateImpl()

diag::client::conversation_state_impl::ConversationStateImpl::ConversationStateImpl ( )

Definition at line 13 of file dm_conversation_state_impl.cpp.

14  : conversation_state_{std::make_unique<StateContext<ConversationState>>()} {
15  // create and add state
16  // kIdle
18  // kDiagWaitForRes
20  std::make_unique<kDiagWaitForRes>(ConversationState::kDiagWaitForRes));
21  // kDiagStartP2StarTimer
22  GetConversationStateContext().AddState(
24  std::make_unique<kDiagStartP2StarTimer>(ConversationState::kDiagStartP2StarTimer));
25  // kDiagRecvdPendingRes
26  GetConversationStateContext().AddState(
28  std::make_unique<kDiagRecvdPendingRes>(ConversationState::kDiagRecvdPendingRes));
29  // kDiagRecvdFinalRes
31  std::make_unique<kDiagRecvdFinalRes>(ConversationState::kDiagRecvdFinalRes));
32  // kDiagSuccess
34  std::make_unique<kDiagSuccess>(ConversationState::kDiagSuccess));
35  // transit to idle state
37 }
auto GetConversationStateContext() noexcept -> StateContext< ConversationState > &
std::unique_ptr< StateContext< ConversationState > > conversation_state_

References GetConversationStateContext(), diag::client::conversation_state_impl::kDiagRecvdFinalRes, diag::client::conversation_state_impl::kDiagRecvdPendingRes, diag::client::conversation_state_impl::kDiagStartP2StarTimer, diag::client::conversation_state_impl::kDiagSuccess, diag::client::conversation_state_impl::kDiagWaitForRes, and diag::client::conversation_state_impl::kIdle.

Here is the call graph for this function:

◆ ~ConversationStateImpl()

diag::client::conversation_state_impl::ConversationStateImpl::~ConversationStateImpl ( )
default

Member Function Documentation

◆ GetConversationStateContext()

auto diag::client::conversation_state_impl::ConversationStateImpl::GetConversationStateContext ( ) -> StateContext<ConversationState> &
noexcept

Definition at line 39 of file dm_conversation_state_impl.cpp.

39  {
40  return *conversation_state_;
41 }

References conversation_state_.

Referenced by ConversationStateImpl().

Here is the caller graph for this function:

Member Data Documentation

◆ conversation_state_

std::unique_ptr<StateContext<ConversationState> > diag::client::conversation_state_impl::ConversationStateImpl::conversation_state_
private

Definition at line 41 of file dm_conversation_state_impl.h.

Referenced by GetConversationStateContext().


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