00001 // 00002 // DISCLAIMER: 00003 // This software was produced by the National Institute of Standards 00004 // and Technology (NIST), an agency of the U.S. government, and by statute is 00005 // not subject to copyright in the United States. Recipients of this 00006 // software assume all responsibility associated with its operation, 00007 // modification,maintenance, and subsequent redistribution. 00008 // 00009 // See NIST Administration Manual 4.09.07 b and Appendix I. 00010 00014 00015 #pragma once 00016 #include "ippdme/ippdme.h" 00017 #include "ippdme/ippObject.h" 00018 #include "ippdme/ippProp.h" 00019 00020 class IPPDME_EXT_CLASS ippStringBuilder; 00021 class IPPDME_EXT_CLASS ippProp; 00022 00023 //----------------------------------------------------------------------------- 00024 class IPPDME_EXT_CLASS ippOneProperty : public ippObject /* abstract class */ 00025 { 00026 public: 00027 virtual ~ippOneProperty(); 00028 virtual void propString(ippStringBuilder& ) const =0; 00029 const ippProp& getProp() const; 00030 00031 protected: 00032 ippOneProperty(const ippProp& prop); 00033 ippProp _prop; 00034 private: 00035 00036 ippOneProperty(const ippOneProperty&); 00037 void operator=(const ippOneProperty&); 00038 }; 00039 IPP_DECLARE_SMARTPOINTER(ippOneProperty);