Loading...
Searching...
No Matches
RecoverySystem Class Reference

Represents a recovery system for a rocket stage. More...

`#include <RecoverySystem.h>`

## Public Types

enum class | DeploymentType { Apogee , Altitude , Timer }
| Deployment trigger types. More...

## Public Member Functions

| RecoverySystem (const std::string &name, DeploymentType deploymentType, double triggerValue, double dragCoefficient, double referenceArea)
| Constructs a new RecoverySystem.
| ~RecoverySystem ()=default
| Default destructor.
bool | checkDeploymentCondition (double altitude, double velocity, double time, bool atApogee) const
| Checks if deployment conditions are met based on flight state.
void | deploy ()
| Marks the recovery system as deployed.
bool | isDeployed () const
| Returns whether the recovery system has been deployed.
double | getDragCoefficient () const
| Gets the drag coefficient.
double | getReferenceArea () const
| Gets the reference area.
const std::string & | getName () const
| Gets the name of the recovery system.

## Private Attributes

std::string | name_
| Name of the recovery system.
DeploymentType | deploymentType_
| Deployment trigger type.
double | triggerValue_
| Trigger value (meters for altitude, seconds for timer).
double | dragCoefficient_
| Drag coefficient after deployment.
double | referenceArea_
| Reference area [m2].
bool | deployed_
| Whether the recovery system has been deployed.

## Detailed Description

Represents a recovery system for a rocket stage.

The RecoverySystem class models parachutes, drogues, or streamers and handles deployment logic based on flight conditions.

## Member Enumeration Documentation

## DeploymentType

enum class RecoverySystem::DeploymentType

strong

Deployment trigger types.

Enumerator
Apogee |
Altitude |
Timer |

## Constructor & Destructor Documentation

## RecoverySystem()

RecoverySystem::RecoverySystem | ( | const std::string & | name,
|  | DeploymentType | deploymentType,
|  | double | triggerValue,
|  | double | dragCoefficient,
|  | double | referenceArea )

Constructs a new RecoverySystem.

Parameters

  name | Name of the recovery device.
  deploymentType | Type of deployment trigger (apogee, altitude, timer).
  triggerValue | Value associated with deployment trigger (e.g., altitude in meters or time in seconds).
  dragCoefficient | Drag coefficient of the recovery device.
  referenceArea | Reference area (canopy projected area) in square meters.

## ~RecoverySystem()

RecoverySystem::~RecoverySystem | ( |  | ) |

default

Default destructor.

## Member Function Documentation

## checkDeploymentCondition()

bool RecoverySystem::checkDeploymentCondition | ( | double | altitude,
|  | double | velocity,
|  | double | time,
|  | bool | atApogee ) const

Checks if deployment conditions are met based on flight state.

Parameters

  altitude | Current altitude above ground (meters).
  velocity | Current vertical velocity (m/s).
  time | Elapsed flight time (seconds).
  atApogee | Flag indicating if rocket has reached apogee.

Returns
  True if deployment should occur.

Here is the caller graph for this function:

## deploy()

void RecoverySystem::deploy | ( |  | ) |

Marks the recovery system as deployed.

Here is the caller graph for this function:

## getDragCoefficient()

double RecoverySystem::getDragCoefficient | ( |  | ) | const

Gets the drag coefficient.

Returns
  Drag coefficient (dimensionless).

Here is the caller graph for this function:

## getName()

const std::string & RecoverySystem::getName | ( |  | ) | const

Gets the name of the recovery system.

Returns
  Recovery system name as a constant reference.

Here is the caller graph for this function:

## getReferenceArea()

double RecoverySystem::getReferenceArea | ( |  | ) | const

Gets the reference area.

Returns
  Reference area (square meters).

Here is the caller graph for this function:

## isDeployed()

bool RecoverySystem::isDeployed | ( |  | ) | const

Returns whether the recovery system has been deployed.

Returns
  True if deployed.

Here is the caller graph for this function:

## Member Data Documentation

## deployed_

bool RecoverySystem::deployed_

private

Whether the recovery system has been deployed.

## deploymentType_

DeploymentType RecoverySystem::deploymentType_

private

Deployment trigger type.

## dragCoefficient_

double RecoverySystem::dragCoefficient_

private

Drag coefficient after deployment.

## name_

std::string RecoverySystem::name_

private

Name of the recovery system.

## referenceArea_

double RecoverySystem::referenceArea_

private

Reference area [m2].

## triggerValue_

double RecoverySystem::triggerValue_

private

Trigger value (meters for altitude, seconds for timer).

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

- include/RecoverySystem.h
- src/RecoverySystem.cpp