msl 1.3.0
Loading...
Searching...
No Matches
External.h
Go to the documentation of this file.
1// Copyright 2025 Julien Lamy, ICube, Université de Strasbourg-CNRS.
2// Part of msl, distributed under the terms of the MIT license.
3
4#ifndef _a211a591_076d_461e_8deb_c04080054b01
5#define _a211a591_076d_461e_8deb_c04080054b01
6
7#include <string>
8
9#include <MrMeasSrv/SeqIF/libRT/sRF_PULSE.h>
10
11#include <MrProtSrv/Domain/CoreNative/SeqLim.h>
12#include <MrProtSrv/Domain/MrProtData/MrProt/MrProt.h>
13#include <MrProtSrv/Domain/MrProtData/MrProt/SeqIF/SeqExpo.h>
14
16
17namespace msl
18{
19
20namespace rf_pulses
21{
22
24class External: public SimpleRFPulse<sRF_PULSE_EXT>
25{
26public:
27 External() = default;
28 External(External const &) = default;
29 External(External &&) = default;
30 External & operator=(External const &) = default;
31 External & operator=(External &&) = default;
32 ~External() override = default;
33
35 long peakTime() const override;
36
38 double thickness() const;
39
44 External & setThickness(double thickness);
45
47 std::string familyName() const;
48
50 External & setFamilyName(std::string const & familyName);
51
53 NLSStatus prepare(
54 MrProt & protocol, SeqLim & limits, SeqExpo & exports) override;
55};
56
57}
58
59}
60
61#endif // _a211a591_076d_461e_8deb_c04080054b01
62
double thickness() const
Return the thickness.
External & setThickness(double thickness)
Set the thickness.
External & setFamilyName(std::string const &familyName)
Set the family name.
std::string familyName() const
Return the family name.
NLSStatus prepare(MrProt &protocol, SeqLim &limits, SeqExpo &exports) override
Prepare the RF pulse and NCO.
long peakTime() const override
Return the time of the RF peak amplitude (µs).
Pre-defined RF pulses and pulse modifiers.
Definition External.h:21
Top-level namespace of the msl library.
Definition acceleration.h:17