## AmitkLineProfile AmitkLineProfile |

## Synopsis

    #define             AMITK_LINE_PROFILE_VIEW             (linep)
    #define             AMITK_LINE_PROFILE_ANGLE            (linep)
    #define             AMITK_LINE_PROFILE_VISIBLE          (linep)
    #define             AMITK_LINE_PROFILE_START_POINT      (linep)
    #define             AMITK_LINE_PROFILE_END_POINT        (linep)
                        AmitkLineProfile;
                        AmitkLineProfileDataElement;
    AmitkLineProfile*   amitk_line_profile_new              (void);
    void                amitk_line_profile_copy_in_place    (AmitkLineProfile *dest_profile,
                                                             const AmitkLineProfile *src_profile);
    void                amitk_line_profile_set_view         (AmitkLineProfile *line_profile,
                                                             const AmitkView view);
    void                amitk_line_profile_set_angle        (AmitkLineProfile *line_profile,
                                                             const amide_real_t angle);
    void                amitk_line_profile_set_visible      (AmitkLineProfile *line_profile,
                                                             const gboolean visible);
    void                amitk_line_profile_set_start_point  (AmitkLineProfile *line_profile,
                                                             const AmitkPoint start_point);
    void                amitk_line_profile_set_end_point    (AmitkLineProfile *line_profile,
                                                             const AmitkPoint end_point);

## Description

## Details

### AMITK_LINE_PROFILE_VIEW()

    #define AMITK_LINE_PROFILE_VIEW(linep)        (AMITK_LINE_PROFILE(linep)->view)

`linep` : |

### AMITK_LINE_PROFILE_ANGLE()

    #define AMITK_LINE_PROFILE_ANGLE(linep)       (AMITK_LINE_PROFILE(linep)->angle)

`linep` : |

### AMITK_LINE_PROFILE_VISIBLE()

    #define AMITK_LINE_PROFILE_VISIBLE(linep)     (AMITK_LINE_PROFILE(linep)->visible)

`linep` : |

### AMITK_LINE_PROFILE_START_POINT()

    #define AMITK_LINE_PROFILE_START_POINT(linep) (AMITK_LINE_PROFILE(linep)->start_point)

`linep` : |

### AMITK_LINE_PROFILE_END_POINT()

    #define AMITK_LINE_PROFILE_END_POINT(linep)   (AMITK_LINE_PROFILE(linep)->end_point)

`linep` : |

### AmitkLineProfile

    typedef struct {
      GObject parent;

      AmitkView view;
      amide_real_t angle; /* in radians */
      gboolean visible;

      /* in base coordinate frame.  These are updated by the canvas */
      AmitkPoint start_point;
      AmitkPoint end_point;
    } AmitkLineProfile;

### AmitkLineProfileDataElement

    typedef struct {
      amide_real_t value;
      amide_real_t location;
    } AmitkLineProfileDataElement;

### amitk_line_profile_new ()

    AmitkLineProfile*   amitk_line_profile_new              (void);

Returns : |

### amitk_line_profile_copy_in_place ()

    void                amitk_line_profile_copy_in_place    (AmitkLineProfile *dest_profile,
                                                             const AmitkLineProfile *src_profile);

`dest_profile` : |
`src_profile` : |

### amitk_line_profile_set_view ()

    void                amitk_line_profile_set_view         (AmitkLineProfile *line_profile,
                                                             const AmitkView view);

`line_profile` : |
`view` : |

### amitk_line_profile_set_angle ()

    void                amitk_line_profile_set_angle        (AmitkLineProfile *line_profile,
                                                             const amide_real_t angle);

`line_profile` : |
`angle` : |

### amitk_line_profile_set_visible ()

    void                amitk_line_profile_set_visible      (AmitkLineProfile *line_profile,
                                                             const gboolean visible);

`line_profile` : |
`visible` : |

### amitk_line_profile_set_start_point ()

    void                amitk_line_profile_set_start_point  (AmitkLineProfile *line_profile,
                                                             const AmitkPoint start_point);

`line_profile` : |
`start_point` : |

### amitk_line_profile_set_end_point ()

    void                amitk_line_profile_set_end_point    (AmitkLineProfile *line_profile,
                                                             const AmitkPoint end_point);

`line_profile` : |
`end_point` : |