F´ Flight Software - C/C++ Documentation  NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
LockGuard.hpp
Go to the documentation of this file.
1 // ======================================================================
2 // \title LockGuard.hpp
3 // \author vwong
4 // \brief hpp file for a RAII-style lock guard utility class
5 //
6 // \copyright
7 // Copyright (C) 2009-2020 California Institute of Technology.
8 // ALL RIGHTS RESERVED. United States Government Sponsorship
9 // acknowledged.
10 // ======================================================================
11 
12 #ifndef LockGuard_HPP
13 #define LockGuard_HPP
14 
15 #include <Fw/Types/BasicTypes.hpp>
16 #include <Os/Mutex.hpp>
17 
18 namespace Utils {
19 
20  class LockGuard
21  {
22 
23  public:
24 
25  // Construct and lock associated mutex
26  LockGuard(Os::Mutex& mutex);
27 
28  // Destruct and unlock associated mutex
29  ~LockGuard();
30 
31  private:
32 
33  // parameters
34  Os::Mutex& m_mutex;
35  };
36 
37 } // end namespace Utils
38 
39 #endif
Utils::LockGuard::LockGuard
LockGuard(Os::Mutex &mutex)
Definition: LockGuard.cpp:18
Utils
Definition: CRCChecker.cpp:20
Utils::LockGuard
Definition: LockGuard.hpp:21
Utils::LockGuard::~LockGuard
~LockGuard()
Definition: LockGuard.cpp:27
Os::Mutex
Definition: Mutex.hpp:8
BasicTypes.hpp
Declares ISF basic types.
Mutex.hpp