Files
pcas/src/gdd/smartGDDPointer.cc
Jeff Hill 467ff91c4f clean up
2002-12-05 23:59:44 +00:00

39 lines
1.2 KiB
C++

/*************************************************************************\
* Copyright (c) 2002 The University of Chicago, as Operator of Argonne
* National Laboratory.
* Copyright (c) 2002 The Regents of the University of California, as
* Operator of Los Alamos National Laboratory.
* EPICS BASE Versions 3.13.7
* and higher are distributed subject to a Software License Agreement found
* in file LICENSE that is included with this distribution.
\*************************************************************************/
//
// Smart Pointer Class for GDD
// ( automatically takes care of referencing / unreferening a gdd each time that it is used )
//
// Author: Jeff Hill
//
#define epicsExportSharedSymbols
#include "smartGDDPointer.h"
//
// smartGDDPointer::set()
//
void smartConstGDDPointer::set ( const gdd * pNewValue )
{
if ( pNewValue != this->pConstValue ) {
int gddStatus;
if ( pNewValue != NULL ) {
gddStatus = pNewValue->reference();
assert ( ! gddStatus );
}
if ( this->pConstValue != NULL ) {
gddStatus = this->pConstValue->unreference();
assert ( ! gddStatus );
}
this->pConstValue = pNewValue;
}
}