Table of Contents

Class PartOwnerComponent

Namespace
KSP.Sim.impl
Assembly
Assembly-CSharp.dll
public class PartOwnerComponent : ObjectComponent, IGuidIdentity
Inheritance
PartOwnerComponent
Implements
Inherited Members
Extension Methods

Constructors

PartOwnerComponent()

public PartOwnerComponent()

PartOwnerComponent(PartOwnerDefinition, IUniverseModel)

public PartOwnerComponent(PartOwnerDefinition definition, IUniverseModel universeModel)

Parameters

definition PartOwnerDefinition
universeModel IUniverseModel

PartOwnerComponent(UniverseModel)

public PartOwnerComponent(UniverseModel universeModel)

Parameters

universeModel UniverseModel

Fields

DebugPrintEnabled

public static bool DebugPrintEnabled

Field Value

bool

PartAttachmentsDirty

public bool PartAttachmentsDirty

Field Value

bool

SymmetrySets

public List<SymmetrySet> SymmetrySets

Field Value

List<SymmetrySet>

Properties

AngularMomentum

public AngularVelocity AngularMomentum { get; }

Property Value

AngularVelocity

AngularVelocityMassAvg

public AngularVelocity AngularVelocityMassAvg { get; }

Property Value

AngularVelocity

CenterOfMass

public Position CenterOfMass { get; set; }

Property Value

Position

ContainerGroup

public ResourceContainerGroup ContainerGroup { get; }

Property Value

ResourceContainerGroup

CrewableParts

public List<PartComponent> CrewableParts { get; }

Property Value

List<PartComponent>

CrewablePartsCount

public int CrewablePartsCount { get; }

Property Value

int

DefinitionType

[TypeConverterIgnore]
public override Type DefinitionType { get; }

Property Value

Type

FlowGraph

public FlowGraph FlowGraph { get; }

Property Value

FlowGraph

MOI

public Vector MOI { get; }

Property Value

Vector

PartCount

public int PartCount { get; }

Property Value

int

Parts

public IEnumerable<PartComponent> Parts { get; }

Property Value

IEnumerable<PartComponent>

ReEntryMaximumFlux

public double ReEntryMaximumFlux { get; }

Property Value

double

ResourceFlowRequestManager

public ResourceFlowRequestManager ResourceFlowRequestManager { get; }

Property Value

ResourceFlowRequestManager

RootPart

public PartComponent RootPart { get; }

Property Value

PartComponent

StateType

[TypeConverterIgnore]
public override Type StateType { get; }

Property Value

Type

StellarExposureData

public List<SolarPanelStarExposureData> StellarExposureData { get; }

Property Value

List<SolarPanelStarExposureData>

TotalMass

public double TotalMass { get; }

Property Value

double

Type

[TypeConverterIgnore]
public override Type Type { get; }

Property Value

Type

VelocityMassAvg

public Velocity VelocityMassAvg { get; }

Property Value

Velocity

ViewObjectComponentType

[TypeConverterIgnore]
public override Type ViewObjectComponentType { get; }

Property Value

Type

VirtualConnections

public IEnumerable<VirtualConnection> VirtualConnections { get; }

Property Value

IEnumerable<VirtualConnection>

Methods

Add(PartComponent, bool)

public void Add(PartComponent part, bool fireChangedEvents)

Parameters

part PartComponent
fireChangedEvents bool

AddContainerCallback(ResourceContainer, Callback)

public void AddContainerCallback(ResourceContainer container, Callback callback)

Parameters

container ResourceContainer
callback Callback

CalculatePhysicsStats()

public void CalculatePhysicsStats()

Contains(PartComponent)

public bool Contains(PartComponent part)

Parameters

part PartComponent

Returns

bool

DetachPart(PartComponent, Guid?, bool, bool)

public void DetachPart(PartComponent part, Guid? promotionGuid = null, bool forceRemove = false, bool ignoreChildrenOfCompoundParts = false)

Parameters

part PartComponent
promotionGuid Guid?
forceRemove bool
ignoreChildrenOfCompoundParts bool

FindConnectedParts(PartComponent, PartComponent)

public List<PartComponent> FindConnectedParts(PartComponent root, PartComponent partToIgnore = null)

Parameters

root PartComponent
partToIgnore PartComponent

Returns

List<PartComponent>

FindConnectedPartsLegacy(PartComponent, PartComponent)

[Obsolete("Do not use, use FindConnectedParts()")]
public List<PartComponent> FindConnectedPartsLegacy(PartComponent root, PartComponent parent = null)

Parameters

root PartComponent
parent PartComponent

Returns

List<PartComponent>

FindPartAttachedTo(PartComponent, string)

public PartComponent FindPartAttachedTo(PartComponent targetPart, string attachmentNodeId)

Parameters

targetPart PartComponent
attachmentNodeId string

Returns

PartComponent

GetAllAttachmentsTo(PartComponent)

public List<AttachNodeData> GetAllAttachmentsTo(PartComponent targetPart)

Parameters

targetPart PartComponent

Returns

List<AttachNodeData>

GetDefinition()

public override object GetDefinition()

Returns

object

GetPartChildren(PartComponent)

public IEnumerable<PartComponent> GetPartChildren(PartComponent part)

Parameters

part PartComponent

Returns

IEnumerable<PartComponent>

GetPartModules<T>()

public List<T> GetPartModules<T>() where T : PartComponentModule

Returns

List<T>

Type Parameters

T

GetPartModules<T>(List<T>)

public int GetPartModules<T>(List<T> results) where T : PartComponentModule

Parameters

results List<T>

Returns

int

Type Parameters

T

GetPartParent(PartComponent)

public PartComponent GetPartParent(PartComponent part)

Parameters

part PartComponent

Returns

PartComponent

GetState()

public override object GetState()

Returns

object

GetVelocityMassAverage()

public Velocity GetVelocityMassAverage()

Returns

Velocity

HasPartModule<T>()

public bool HasPartModule<T>() where T : PartComponentModule

Returns

bool

Type Parameters

T

IsPathToPart(PartComponent, PartComponent)

public bool IsPathToPart(PartComponent startPart, PartComponent targetPart)

Parameters

startPart PartComponent
targetPart PartComponent

Returns

bool

OnFixedUpdate(double, double)

public override void OnFixedUpdate(double universalTime, double deltaUniversalTime)

Parameters

universalTime double
deltaUniversalTime double

OnLateUpdate(double)

public override void OnLateUpdate(double universalTime)

Parameters

universalTime double

OnRemoved(SimulationObjectModel, double)

public override void OnRemoved(SimulationObjectModel simulationObject, double universalTime)

Parameters

simulationObject SimulationObjectModel
universalTime double

OnStart(double)

public override void OnStart(double universalTime)

Parameters

universalTime double

RecalculatePhysicsStats(bool)

public void RecalculatePhysicsStats(bool forceRecalculation)

Parameters

forceRecalculation bool

Remove(PartComponent, bool)

public void Remove(PartComponent part, bool fireChangedEvents)

Parameters

part PartComponent
fireChangedEvents bool

RemoveContainerCallback(ResourceContainer, Callback)

public void RemoveContainerCallback(ResourceContainer container, Callback callback)

Parameters

container ResourceContainer
callback Callback

ResetResourceFlowRequests()

public void ResetResourceFlowRequests()

ResetRootPart()

public void ResetRootPart()

SetState(object, ISimulationModelMap)

public override object SetState(object state, ISimulationModelMap simulationModelMap)

Parameters

state object
simulationModelMap ISimulationModelMap

Returns

object

TriggerPartsChangedEvents(List<PartComponent>, List<PartComponent>)

public void TriggerPartsChangedEvents(List<PartComponent> partsAdded, List<PartComponent> partsRemoved)

Parameters

partsAdded List<PartComponent>
partsRemoved List<PartComponent>

TryGetPart(IGGuid, out PartComponent)

public bool TryGetPart(IGGuid guid, out PartComponent part)

Parameters

guid IGGuid
part PartComponent

Returns

bool

UpdateMassStats()

public void UpdateMassStats()

UpdatePartRelationships()

public void UpdatePartRelationships()

ValidateState(object, ISimulationModelMap)

public override bool ValidateState(object stateData, ISimulationModelMap simulationModelMap)

Parameters

stateData object
simulationModelMap ISimulationModelMap

Returns

bool

Events

OnCenterOfMassChanged

public event Action<Position> OnCenterOfMassChanged

Event Type

Action<Position>

PartsAdded

public event Action<List<PartComponent>> PartsAdded

Event Type

Action<List<PartComponent>>

PartsChanged

public event Action PartsChanged

Event Type

Action

PartsRemoved

public event Action<List<PartComponent>> PartsRemoved

Event Type

Action<List<PartComponent>>