ERC CISST - cisst software

cmnAccessorMacros.h File Reference


Detailed Description

Accessor macros.

Definition in file cmnAccessorMacros.h.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines


Define Documentation

#define CMN_DECLARE_MEMBER_AND_ACCESSORS ( memberType,
memberName   )     CMN_DECLARE_MEMBER_AND_ACCESSORS_INTERNAL(memberType, memberName)

Macro to declare a data member and implement accessor methods. This macro creates 4 different accessors, two to read and two to write. For example, the following call:

will create the 4 following methods:
    double & Timestamp(void);
    const double & Timestamp(void);
    void SetTimestamp(double newValue);
    void GetTimestamp(double & placeHolder);

Finally, when used in conjunction with SWIG, the method Get is modified to return a value by const reference.

Definition at line 70 of file cmnAccessorMacros.h.

#define CMN_DECLARE_MEMBER_AND_ACCESSORS_INTERNAL ( memberType,
memberName   ) 

Value:

protected:                                                              \
 memberType memberName##Member;                                         \
public:                                                                 \
 inline void Set##memberName(const memberType & newValue) {             \
     this->memberName##Member = newValue;                               \
 }                                                                      \
 inline void Get##memberName(memberType & placeHolder) {                \
     placeHolder = this->memberName##Member;                            \
 }                                                                      \
 inline const memberType & memberName(void) const {                     \
     return this->memberName##Member;                                   \
 }                                                                      \
 inline memberType & memberName(void) {                                 \
     return this->memberName##Member;                                   \
 }                                                                      \
protected:
Macro used to declare a data member and implement accessor methods in a standard way. This macro should not be used, use CMN_DECLARE_MEMBER_AND_ACCESSORS instead.

Definition at line 34 of file cmnAccessorMacros.h.


erc-cisst-devel<at>lists.johnshopkins.edu