verify_data Function

private pure function verify_data(self, sources)

True if the trajectory has the data the sources refer to (elements and optionals in range).

Type Bound

Trajectory

Arguments

Type IntentOptional Attributes Name
class(Trajectory), intent(in) :: self
type(DataSource), intent(in) :: sources(3)

where the components come from

Return Value logical


Called by

proc~~verify_data~~CalledByGraph proc~verify_data Trajectory%verify_data proc~data_valid TrajectoryFollower%data_valid proc~data_valid->proc~verify_data proc~source_points source_points proc~source_points->proc~verify_data proc~curve_points CurveArtist%curve_points proc~curve_points->proc~source_points proc~marker_pick marker_pick proc~marker_pick->proc~source_points proc~marker_update MarkerArtist%marker_update proc~marker_update->proc~source_points proc~marker_point marker_point proc~marker_update->proc~marker_point proc~add_intermediates add_intermediates proc~marker_update->proc~add_intermediates proc~update_bounds update_bounds proc~marker_update->proc~update_bounds proc~ribbon_points RibbonArtist%ribbon_points proc~ribbon_points->proc~source_points proc~segment_count segment_count proc~segment_count->proc~source_points proc~set_x_data~2 TrajectoryFollower%set_x_data proc~set_x_data~2->proc~data_valid proc~set_y_data~2 TrajectoryFollower%set_y_data proc~set_y_data~2->proc~data_valid proc~set_z_data~2 TrajectoryFollower%set_z_data proc~set_z_data~2->proc~data_valid proc~state_at TrajectoryFollower%state_at proc~state_at->proc~data_valid proc~drawable_pick DrawableTrajectory%drawable_pick proc~drawable_pick->proc~marker_pick proc~curve_pick curve_pick proc~drawable_pick->proc~curve_pick proc~followed_pose followed_pose proc~followed_pose->proc~state_at proc~world_matrix_at ReferenceFrame%world_matrix_at proc~followed_pose->proc~world_matrix_at proc~segment_build SegmentArtist%segment_build proc~segment_build->proc~segment_count proc~segment_update SegmentArtist%segment_update proc~segment_update->proc~segment_count proc~write_segments write_segments proc~segment_update->proc~write_segments proc~update~2 TrajectoryFollower%update proc~update~2->proc~state_at proc~local_matrix_at ReferenceFrame%local_matrix_at proc~local_matrix_at->proc~followed_pose proc~update ReferenceFrame%update proc~update->proc~followed_pose proc~update->proc~update~2 proc~drawable_update DrawableTrajectory%drawable_update proc~drawable_update->proc~update proc~fm_update FrameManager%fm_update proc~fm_update->proc~update proc~sphere_update Sphere%sphere_update proc~sphere_update->proc~update proc~terrain_update TerrainBody%terrain_update proc~terrain_update->proc~update proc~world_matrix_at->proc~local_matrix_at proc~world_matrix_at->proc~world_matrix_at proc~data_to_shown data_to_shown proc~data_to_shown->proc~world_matrix_at proc~to_shown to_shown proc~to_shown->proc~data_to_shown proc~art_point_between art_point_between proc~art_point_between->proc~to_shown proc~to_shown_at to_shown_at proc~to_shown_at->proc~to_shown proc~art_point art_point proc~art_point->proc~to_shown_at proc~art_points art_points proc~art_points->proc~to_shown_at proc~intermediates_by_time intermediates_by_time proc~intermediates_by_time->proc~art_point_between proc~marker_point->proc~to_shown_at proc~marker_point->proc~art_point proc~update_ribbon_tail RibbonArtist%update_ribbon_tail proc~update_ribbon_tail->proc~art_point_between proc~update_ribbon_tail->proc~art_point proc~update_tail CurveArtist%update_tail proc~update_tail->proc~art_point_between proc~update_tail->proc~art_point proc~write_segments->proc~to_shown_at proc~add_intermediates->proc~intermediates_by_time proc~intermediates_by_data intermediates_by_data proc~add_intermediates->proc~intermediates_by_data proc~intermediates_by_distance intermediates_by_distance proc~add_intermediates->proc~intermediates_by_distance proc~curve_pick->proc~art_point proc~intermediates_by_data->proc~art_point proc~intermediates_by_distance->proc~art_point proc~update_bounds->proc~art_points proc~write_curve CurveArtist%write_curve proc~write_curve->proc~art_points proc~write_ribbon RibbonArtist%write_ribbon proc~write_ribbon->proc~art_points

Source Code

    pure logical function verify_data(self, sources)
        class(Trajectory), intent(in) :: self
        type(DataSource), intent(in) :: sources(3)          !! where the components come from
        integer :: k
        verify_data = .true.
        do k = 1, 3
            select case (sources(k)%src)
            case (SOURCE_ZERO, SOURCE_TIME)
            case (SOURCE_POSOPT)
                if (sources(k)%element < 1 .or. sources(k)%element > self%dof_ .or. &
                    sources(k)%opt < 0 .or. sources(k)%opt > self%nopt_) verify_data = .false.
            case (SOURCE_ATTITUDE)
                if (sources(k)%element < 1 .or. sources(k)%element > 4) verify_data = .false.
            case default
                verify_data = .false.
            end select
        end do
    end function verify_data