Class MessageCenter
  
  
  
    - Namespace
 - KSP.Messages
 
  - Assembly
 - Assembly-CSharp.dll
 
   
  
  
  
    public class MessageCenter : MonoBehaviour, IMessageCenter
   
  
    - Inheritance
 
    - 
      
      
MessageCenter
     
  
  
    - Implements
 
    - 
      
    
 
  
  
    - Extension Methods
 
    - 
  
  
  
  
  
  
 
  Constructors
  
  
  MessageCenter()
  
  
  
  
  
  Methods
  
  
  Awake()
  
  
  
  
  
  
  
  CreateMessage(Type)
  
  
  
  
  
    public MessageCenterMessage CreateMessage(Type type)
   
  Parameters
  
    type Type 
    
  
  Returns
  
    - MessageCenterMessage
 
    
  
  
  
  CreateMessage<T>()
  
  
  
  
  
    public T CreateMessage<T>() where T : MessageCenterMessage, new()
   
  Returns
  
    - T
 
    
  
  Type Parameters
  
    T 
    
  
  
  
  FiniteSubscribe<TMessage>(Action<MessageCenterMessage>)
  
  
  
  
  
    public SubscriptionHandle FiniteSubscribe<TMessage>(Action<MessageCenterMessage> callback) where TMessage : MessageCenterMessage
   
  Parameters
  
    callback Action<MessageCenterMessage> 
    
  
  Returns
  
    - SubscriptionHandle
 
    
  
  Type Parameters
  
    TMessage 
    
  
  
  
  PersistentSubscribe<TMessage>(Action<MessageCenterMessage>)
  
  
  
  
  
    public SubscriptionHandle PersistentSubscribe<TMessage>(Action<MessageCenterMessage> callback) where TMessage : MessageCenterMessage
   
  Parameters
  
    callback Action<MessageCenterMessage> 
    
  
  Returns
  
    - SubscriptionHandle
 
    
  
  Type Parameters
  
    TMessage 
    
  
  
  
  Publish(Type, MessageCenterMessage)
  
  
  
  
  
    public void Publish(Type type, MessageCenterMessage message)
   
  Parameters
  
    type Type 
    
    message MessageCenterMessage 
    
  
  
  
  Publish<T>()
  
  
  
  
  
    public void Publish<T>() where T : MessageCenterMessage, new()
   
  Type Parameters
  
    T 
    
  
  
  
  Publish<TMessage>(TMessage)
  
  
  
  
  
    public void Publish<TMessage>(TMessage message) where TMessage : MessageCenterMessage
   
  Parameters
  
    message TMessage 
    
  
  Type Parameters
  
    TMessage 
    
  
  
  
  Shutdown()
  
  
  
  
  
  
  
  Subscribe(Type, Action<MessageCenterMessage>, bool, bool)
  
  
  
  
  
    public SubscriptionHandle Subscribe(Type type, Action<MessageCenterMessage> callback, bool isFinite = false, bool isPersistent = false)
   
  Parameters
  
    type Type 
    
    callback Action<MessageCenterMessage> 
    
    isFinite bool 
    
    isPersistent bool 
    
  
  Returns
  
    - SubscriptionHandle
 
    
  
  
  
  Subscribe<TMessage>(Action<MessageCenterMessage>)
  
  
  
  
  
    public SubscriptionHandle Subscribe<TMessage>(Action<MessageCenterMessage> callback) where TMessage : MessageCenterMessage
   
  Parameters
  
    callback Action<MessageCenterMessage> 
    
  
  Returns
  
    - SubscriptionHandle
 
    
  
  Type Parameters
  
    TMessage 
    
  
  
  
  TryCreateMessage<T>(out T)
  
  
  
  
  
    public bool TryCreateMessage<T>(out T msg) where T : MessageCenterMessage, new()
   
  Parameters
  
    msg T 
    
  
  Returns
  
    - bool
 
    
  
  Type Parameters
  
    T 
    
  
  
  
  Unsubscribe(ref SubscriptionHandle)
  
  
  
  
  
    public void Unsubscribe(ref SubscriptionHandle handle)
   
  Parameters
  
    handle SubscriptionHandle 
    
  
  
  
  Unsubscribe<TMessage>(Action<MessageCenterMessage>)
  
  
  
  
  
    public bool Unsubscribe<TMessage>(Action<MessageCenterMessage> associatedCallback) where TMessage : MessageCenterMessage
   
  Parameters
  
    associatedCallback Action<MessageCenterMessage> 
    
  
  Returns
  
    - bool
 
    
  
  Type Parameters
  
    TMessage