Helios++
Helios software for LiDAR simulations
FullWaveformPulseRunnable Member List

This is the complete list of members for FullWaveformPulseRunnable, including all inherited members.

_calcReceivedPower(double Pt, double Dr2, double R, double Bt2, double etaSys, double etaAtm, double sigma)AbstractPulseRunnableinlinestatic
absoluteBeamAttitudeAbstractPulseRunnable
absoluteBeamOriginAbstractPulseRunnable
AbstractPulseRunnable(std::shared_ptr< AbstractDetector > detector, glm::dvec3 absoluteBeamOrigin, Rotation absoluteBeamAttitude, int pulseNumber, long gpsTime)AbstractPulseRunnableinline
allMeasurementsFullWaveformPulseRunnableprivate
allMeasurementsMutexFullWaveformPulseRunnableprivate
applyMeasurementError(RandomnessGenerator< double > &rg, double &distance, glm::dvec3 &beamOrigin, glm::dvec3 &beamDirection)AbstractPulseRunnable
calcAtmosphericFactor(double targetRange)AbstractPulseRunnableinline
calcCrossSection(double f, double Alf, double theta)AbstractPulseRunnable
calcEchowidthFullWaveformPulseRunnableprivate
calcEmmitedPower(double radius, double targetRange)FullWaveformPulseRunnableprivate
calcIntensity(double incidenceAngle, double targetRange, double targetReflectivity, double targetSpecularity, double targetSpecularExponent, double targetArea, double radius)FullWaveformPulseRunnable
calcIntensity(double targetRange, double radius, double sigma)FullWaveformPulseRunnable
calcReceivedPower(double emittedPower, double targetRange, double incidenceAngle, double targetReflectivity, double targetSpecularity, double targetSpecularExponent, double targetArea)AbstractPulseRunnable
calcReceivedPower(double emittedPower, double targetRange, double sigma)AbstractPulseRunnable
captureFullWave(std::vector< double > &fullwave, int fullwaveIndex, double min_time, double max_time, glm::dvec3 &beamOrigin, glm::dvec3 &beamDir, long gpstime, bool fullWaveNoise, RandomnessGenerator< double > &rg2)FullWaveformPulseRunnableprivate
capturePoint(Measurement &m, RandomnessGenerator< double > &rg, std::vector< Measurement > *allMeasurements, std::mutex *allMeasurementsMutex, std::vector< Measurement > *cycleMeasurements, std::mutex *cycleMeasurementsMutex)AbstractPulseRunnable
computeSubrays(Scene &scene, NoiseSource< double > &intersectionHandlingNoiseSource, std::map< double, double > &reflections, vector< RaySceneIntersection > &intersects)FullWaveformPulseRunnableprivate
currentGpsTimeAbstractPulseRunnable
currentPulseNumAbstractPulseRunnable
cycleMeasurementsFullWaveformPulseRunnableprivate
cycleMeasurementsMutexFullWaveformPulseRunnableprivate
detectorAbstractPulseRunnable
detectPeak(int i, int win_size, vector< double > &fullwave)FullWaveformPulseRunnableprivate
digestFullWaveform(std::vector< Measurement > &pointsMeasurement, int &numReturns, std::vector< std::vector< double >> &apMatrix, std::vector< double > &fullwave, vector< RaySceneIntersection > &intersects, glm::dvec3 &beamDir, double nsPerBin, int numFullwaveBins, int peakIntensityIndex, double minHitTime_ns)FullWaveformPulseRunnableprivate
digestIntersections(std::vector< std::vector< double >> &apMatrix, RandomnessGenerator< double > &randGen, RandomnessGenerator< double > &randGen2, glm::dvec3 &beamDir, std::map< double, double > &reflections, vector< RaySceneIntersection > &intersects)FullWaveformPulseRunnableprivate
epsFullWaveformPulseRunnablestatic
exportOutput(std::vector< double > &fullwave, int &numReturns, std::vector< Measurement > &pointsMeasurement, glm::dvec3 &beamDir, double minHitTime_ns, double maxHitTime_ns, RandomnessGenerator< double > &randGen, RandomnessGenerator< double > &randGen2)FullWaveformPulseRunnableprivate
findMaxMinHitDistances(std::map< double, double > &reflections, double &minHitDist_m, double &maxHitDist_m)FullWaveformPulseRunnableprivate
FullWaveformPulseRunnable(std::shared_ptr< FullWaveformPulseDetector > detector, glm::dvec3 absoluteBeamOrigin, Rotation absoluteBeamAttitude, int currentPulseNum, long currentGpsTime, bool writeWaveform, bool calcEchowidth, std::vector< Measurement > *allMeasurements, std::mutex *allMeasurementsMutex, std::vector< Measurement > *cycleMeasurements, std::mutex *cycleMeasurementsMutex, unsigned int legIndex)FullWaveformPulseRunnableinline
fwDetectorFullWaveformPulseRunnableprivate
handleSubray(int circleStep, double circleStep_rad, Rotation &r1, Scene &scene, double divergenceAngle, NoiseSource< double > &intersectionHandlingNoiseSource, std::map< double, double > &reflections, vector< RaySceneIntersection > &intersects)FullWaveformPulseRunnableprivate
initializeFullWaveform(double minHitDist_m, double maxHitDist_m, double &minHitTime_ns, double &maxHitTime_ns, double &nsPerBin, double &distanceThreshold, int &peakIntensityIndex, int &numFullwaveBins)FullWaveformPulseRunnableprivate
legIndexFullWaveformPulseRunnable
operator()() overrideFullWaveformPulseRunnableinlinevirtual
operator()(std::vector< std::vector< double >> &apMatrix, RandomnessGenerator< double > &randGen, RandomnessGenerator< double > &randGen2, NoiseSource< double > &intersectionHandlingNoiseSource)FullWaveformPulseRunnable
phongBDRF(double incidenceAngle, double targetSpecularity, double targetSpecularExponent)AbstractPulseRunnable
populateFullWaveform(std::map< double, double > &reflections, std::vector< double > &fullwave, double distanceThreshold, double minHitTime_ns, double nsPerBin)FullWaveformPulseRunnableprivate
writeGroundAbstractPulseRunnable
writeWaveformFullWaveformPulseRunnableprivate
~FullWaveformPulseRunnable() (defined in FullWaveformPulseRunnable)FullWaveformPulseRunnableinlinevirtual