dds_qos.cpp

Go to the documentation of this file.
00001 /*
00002  * This code was generated by the XML Schema Compiler.
00003  *
00004  * Changes made to this code will most likely be overwritten
00005  * when the handlers are recompiled.
00006  *
00007  * If you find errors or feel that there are bugfixes to be made,
00008  * please report this to the XSC project at
00009  * https://github.com/DOCGroup/XSC
00010  */
00011 #include "dds_qos.hpp"
00012 
00013 #include "ace/ace_wchar.h"
00014 #include "ace/Null_Mutex.h"
00015 #include "ace/TSS_T.h"
00016 #include "ace/Singleton.h"
00017 
00018 namespace dds
00019 {
00020   // destinationOrderKind
00021 
00022   destinationOrderKind::Value destinationOrderKind::
00023   integral () const
00024   {
00025     return v_;
00026   }
00027 
00028   bool
00029   operator== (::dds::destinationOrderKind const& a, ::dds::destinationOrderKind const& b)
00030   {
00031     return a.v_ == b.v_;
00032   }
00033 
00034   bool
00035   operator!= (::dds::destinationOrderKind const& a, ::dds::destinationOrderKind const& b)
00036   {
00037     return a.v_ != b.v_;
00038   }
00039 
00040   destinationOrderKind::
00041   destinationOrderKind (destinationOrderKind::Value v)
00042   : v_ (v)
00043   {
00044   }
00045 
00046   // durabilityKind
00047 
00048   durabilityKind::Value durabilityKind::
00049   integral () const
00050   {
00051     return v_;
00052   }
00053 
00054   bool
00055   operator== (::dds::durabilityKind const& a, ::dds::durabilityKind const& b)
00056   {
00057     return a.v_ == b.v_;
00058   }
00059 
00060   bool
00061   operator!= (::dds::durabilityKind const& a, ::dds::durabilityKind const& b)
00062   {
00063     return a.v_ != b.v_;
00064   }
00065 
00066   durabilityKind::
00067   durabilityKind (durabilityKind::Value v)
00068   : v_ (v)
00069   {
00070   }
00071 
00072   // historyKind
00073 
00074   historyKind::Value historyKind::
00075   integral () const
00076   {
00077     return v_;
00078   }
00079 
00080   bool
00081   operator== (::dds::historyKind const& a, ::dds::historyKind const& b)
00082   {
00083     return a.v_ == b.v_;
00084   }
00085 
00086   bool
00087   operator!= (::dds::historyKind const& a, ::dds::historyKind const& b)
00088   {
00089     return a.v_ != b.v_;
00090   }
00091 
00092   historyKind::
00093   historyKind (historyKind::Value v)
00094   : v_ (v)
00095   {
00096   }
00097 
00098   // livelinessKind
00099 
00100   livelinessKind::Value livelinessKind::
00101   integral () const
00102   {
00103     return v_;
00104   }
00105 
00106   bool
00107   operator== (::dds::livelinessKind const& a, ::dds::livelinessKind const& b)
00108   {
00109     return a.v_ == b.v_;
00110   }
00111 
00112   bool
00113   operator!= (::dds::livelinessKind const& a, ::dds::livelinessKind const& b)
00114   {
00115     return a.v_ != b.v_;
00116   }
00117 
00118   livelinessKind::
00119   livelinessKind (livelinessKind::Value v)
00120   : v_ (v)
00121   {
00122   }
00123 
00124   // presentationAccessScopeKind
00125 
00126   presentationAccessScopeKind::Value presentationAccessScopeKind::
00127   integral () const
00128   {
00129     return v_;
00130   }
00131 
00132   bool
00133   operator== (::dds::presentationAccessScopeKind const& a, ::dds::presentationAccessScopeKind const& b)
00134   {
00135     return a.v_ == b.v_;
00136   }
00137 
00138   bool
00139   operator!= (::dds::presentationAccessScopeKind const& a, ::dds::presentationAccessScopeKind const& b)
00140   {
00141     return a.v_ != b.v_;
00142   }
00143 
00144   presentationAccessScopeKind::
00145   presentationAccessScopeKind (presentationAccessScopeKind::Value v)
00146   : v_ (v)
00147   {
00148   }
00149 
00150   // reliabilityKind
00151 
00152   reliabilityKind::Value reliabilityKind::
00153   integral () const
00154   {
00155     return v_;
00156   }
00157 
00158   bool
00159   operator== (::dds::reliabilityKind const& a, ::dds::reliabilityKind const& b)
00160   {
00161     return a.v_ == b.v_;
00162   }
00163 
00164   bool
00165   operator!= (::dds::reliabilityKind const& a, ::dds::reliabilityKind const& b)
00166   {
00167     return a.v_ != b.v_;
00168   }
00169 
00170   reliabilityKind::
00171   reliabilityKind (reliabilityKind::Value v)
00172   : v_ (v)
00173   {
00174   }
00175 
00176   // ownershipKind
00177 
00178   ownershipKind::Value ownershipKind::
00179   integral () const
00180   {
00181     return v_;
00182   }
00183 
00184   bool
00185   operator== (::dds::ownershipKind const& a, ::dds::ownershipKind const& b)
00186   {
00187     return a.v_ == b.v_;
00188   }
00189 
00190   bool
00191   operator!= (::dds::ownershipKind const& a, ::dds::ownershipKind const& b)
00192   {
00193     return a.v_ != b.v_;
00194   }
00195 
00196   ownershipKind::
00197   ownershipKind (ownershipKind::Value v)
00198   : v_ (v)
00199   {
00200   }
00201 
00202   // duration
00203 
00204   duration::duration ()
00205   : ::XSCRT::Type ()
00206   {
00207   }
00208 
00209   duration::duration (duration const& s) :
00210   ::XSCRT::Type (s)
00211   , sec_ (s.sec_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.sec_) : 0)
00212   , nanosec_ (s.nanosec_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.nanosec_) : 0)
00213   {
00214     if (sec_.get ()) sec_->container (this);
00215     if (nanosec_.get ()) nanosec_->container (this);
00216   }
00217 
00218   duration&
00219   duration::operator= (duration const& s)
00220   {
00221     if (&s != this)
00222     {
00223       if (s.sec_.get ())
00224         sec (*(s.sec_));
00225       else
00226         sec_.reset (0);
00227 
00228       if (s.nanosec_.get ())
00229         nanosec (*(s.nanosec_));
00230       else
00231         nanosec_.reset (0);
00232     }
00233 
00234     return *this;
00235   }
00236 
00237 
00238   // duration
00239   bool duration::
00240   sec_p () const
00241   {
00242     return sec_.get () != 0;
00243   }
00244 
00245   ::XMLSchema::string<ACE_TCHAR> const& duration::
00246   sec () const
00247   {
00248     return *sec_;
00249   }
00250 
00251   void duration::
00252   sec (::XMLSchema::string<ACE_TCHAR> const& e)
00253   {
00254     if (sec_.get ())
00255     {
00256       *sec_ = e;
00257     }
00258 
00259     else
00260     {
00261       sec_ = duration::sec_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
00262       sec_->container (this);
00263     }
00264   }
00265 
00266   // duration
00267   bool duration::
00268   nanosec_p () const
00269   {
00270     return nanosec_.get () != 0;
00271   }
00272 
00273   ::XMLSchema::string<ACE_TCHAR> const& duration::
00274   nanosec () const
00275   {
00276     return *nanosec_;
00277   }
00278 
00279   void duration::
00280   nanosec (::XMLSchema::string<ACE_TCHAR> const& e)
00281   {
00282     if (nanosec_.get ())
00283     {
00284       *nanosec_ = e;
00285     }
00286 
00287     else
00288     {
00289       nanosec_ = duration::nanosec_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
00290       nanosec_->container (this);
00291     }
00292   }
00293 
00294 
00295   // stringSeq
00296 
00297   stringSeq::stringSeq ()
00298   : ::XSCRT::Type ()
00299   {
00300   }
00301 
00302   stringSeq::stringSeq (stringSeq const& s) :
00303   ::XSCRT::Type (s)
00304   , element_ (s.element_)
00305   {
00306   }
00307 
00308   stringSeq&
00309   stringSeq::operator= (stringSeq const& s)
00310   {
00311     if (&s != this)
00312     {
00313       element_ = s.element_;
00314     }
00315 
00316     return *this;
00317   }
00318 
00319 
00320   // stringSeq
00321   stringSeq::element_iterator stringSeq::
00322   begin_element ()
00323   {
00324     return element_.begin ();
00325   }
00326 
00327   stringSeq::element_iterator stringSeq::
00328   end_element ()
00329   {
00330     return element_.end ();
00331   }
00332 
00333   stringSeq::element_const_iterator stringSeq::
00334   begin_element () const
00335   {
00336     return element_.begin ();
00337   }
00338 
00339   stringSeq::element_const_iterator stringSeq::
00340   end_element () const
00341   {
00342     return element_.end ();
00343   }
00344 
00345   void stringSeq::
00346   add_element (stringSeq::element_value_type const& e)
00347   {
00348     element_.push_back (e);
00349   }
00350 
00351   size_t stringSeq::
00352   count_element(void) const
00353   {
00354     return element_.size ();
00355   }
00356 
00357 
00358   // deadlineQosPolicy
00359 
00360   deadlineQosPolicy::deadlineQosPolicy ()
00361   : ::XSCRT::Type ()
00362   {
00363   }
00364 
00365   deadlineQosPolicy::deadlineQosPolicy (deadlineQosPolicy const& s) :
00366   ::XSCRT::Type (s)
00367   , period_ (s.period_.get () ? new ::dds::duration (*s.period_) : 0)
00368   {
00369     if (period_.get ()) period_->container (this);
00370   }
00371 
00372   deadlineQosPolicy&
00373   deadlineQosPolicy::operator= (deadlineQosPolicy const& s)
00374   {
00375     if (&s != this)
00376     {
00377       if (s.period_.get ())
00378         period (*(s.period_));
00379       else
00380         period_.reset (0);
00381     }
00382 
00383     return *this;
00384   }
00385 
00386 
00387   // deadlineQosPolicy
00388   bool deadlineQosPolicy::
00389   period_p () const
00390   {
00391     return period_.get () != 0;
00392   }
00393 
00394   ::dds::duration const& deadlineQosPolicy::
00395   period () const
00396   {
00397     return *period_;
00398   }
00399 
00400   void deadlineQosPolicy::
00401   period (::dds::duration const& e)
00402   {
00403     if (period_.get ())
00404     {
00405       *period_ = e;
00406     }
00407 
00408     else
00409     {
00410       period_ = deadlineQosPolicy::period_auto_ptr_type (new ::dds::duration (e));
00411       period_->container (this);
00412     }
00413   }
00414 
00415 
00416   // destinationOrderQosPolicy
00417 
00418   destinationOrderQosPolicy::destinationOrderQosPolicy ()
00419   : ::XSCRT::Type ()
00420   {
00421   }
00422 
00423   destinationOrderQosPolicy::destinationOrderQosPolicy (destinationOrderQosPolicy const& s) :
00424   ::XSCRT::Type (s)
00425   , kind_ (s.kind_.get () ? new ::dds::destinationOrderKind (*s.kind_) : 0)
00426   {
00427     if (kind_.get ()) kind_->container (this);
00428   }
00429 
00430   destinationOrderQosPolicy&
00431   destinationOrderQosPolicy::operator= (destinationOrderQosPolicy const& s)
00432   {
00433     if (&s != this)
00434     {
00435       if (s.kind_.get ())
00436         kind (*(s.kind_));
00437       else
00438         kind_.reset (0);
00439     }
00440 
00441     return *this;
00442   }
00443 
00444 
00445   // destinationOrderQosPolicy
00446   bool destinationOrderQosPolicy::
00447   kind_p () const
00448   {
00449     return kind_.get () != 0;
00450   }
00451 
00452   ::dds::destinationOrderKind const& destinationOrderQosPolicy::
00453   kind () const
00454   {
00455     return *kind_;
00456   }
00457 
00458   void destinationOrderQosPolicy::
00459   kind (::dds::destinationOrderKind const& e)
00460   {
00461     if (kind_.get ())
00462     {
00463       *kind_ = e;
00464     }
00465 
00466     else
00467     {
00468       kind_ = destinationOrderQosPolicy::kind_auto_ptr_type (new ::dds::destinationOrderKind (e));
00469       kind_->container (this);
00470     }
00471   }
00472 
00473 
00474   // durabilityQosPolicy
00475 
00476   durabilityQosPolicy::durabilityQosPolicy ()
00477   : ::XSCRT::Type ()
00478   {
00479   }
00480 
00481   durabilityQosPolicy::durabilityQosPolicy (durabilityQosPolicy const& s) :
00482   ::XSCRT::Type (s)
00483   , kind_ (s.kind_.get () ? new ::dds::durabilityKind (*s.kind_) : 0)
00484   {
00485     if (kind_.get ()) kind_->container (this);
00486   }
00487 
00488   durabilityQosPolicy&
00489   durabilityQosPolicy::operator= (durabilityQosPolicy const& s)
00490   {
00491     if (&s != this)
00492     {
00493       if (s.kind_.get ())
00494         kind (*(s.kind_));
00495       else
00496         kind_.reset (0);
00497     }
00498 
00499     return *this;
00500   }
00501 
00502 
00503   // durabilityQosPolicy
00504   bool durabilityQosPolicy::
00505   kind_p () const
00506   {
00507     return kind_.get () != 0;
00508   }
00509 
00510   ::dds::durabilityKind const& durabilityQosPolicy::
00511   kind () const
00512   {
00513     return *kind_;
00514   }
00515 
00516   void durabilityQosPolicy::
00517   kind (::dds::durabilityKind const& e)
00518   {
00519     if (kind_.get ())
00520     {
00521       *kind_ = e;
00522     }
00523 
00524     else
00525     {
00526       kind_ = durabilityQosPolicy::kind_auto_ptr_type (new ::dds::durabilityKind (e));
00527       kind_->container (this);
00528     }
00529   }
00530 
00531 
00532   // durabilityServiceQosPolicy
00533 
00534   durabilityServiceQosPolicy::durabilityServiceQosPolicy ()
00535   : ::XSCRT::Type ()
00536   {
00537   }
00538 
00539   durabilityServiceQosPolicy::durabilityServiceQosPolicy (durabilityServiceQosPolicy const& s) :
00540   ::XSCRT::Type (s)
00541   , service_cleanup_delay_ (s.service_cleanup_delay_.get () ? new ::dds::duration (*s.service_cleanup_delay_) : 0)
00542   , history_kind_ (s.history_kind_.get () ? new ::dds::historyKind (*s.history_kind_) : 0)
00543   , history_depth_ (s.history_depth_.get () ? new ::XMLSchema::positiveInteger (*s.history_depth_) : 0)
00544   , max_samples_ (s.max_samples_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.max_samples_) : 0)
00545   , max_instances_ (s.max_instances_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.max_instances_) : 0)
00546   , max_samples_per_instance_ (s.max_samples_per_instance_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.max_samples_per_instance_) : 0)
00547   {
00548     if (service_cleanup_delay_.get ()) service_cleanup_delay_->container (this);
00549     if (history_kind_.get ()) history_kind_->container (this);
00550     if (history_depth_.get ()) history_depth_->container (this);
00551     if (max_samples_.get ()) max_samples_->container (this);
00552     if (max_instances_.get ()) max_instances_->container (this);
00553     if (max_samples_per_instance_.get ()) max_samples_per_instance_->container (this);
00554   }
00555 
00556   durabilityServiceQosPolicy&
00557   durabilityServiceQosPolicy::operator= (durabilityServiceQosPolicy const& s)
00558   {
00559     if (&s != this)
00560     {
00561       if (s.service_cleanup_delay_.get ())
00562         service_cleanup_delay (*(s.service_cleanup_delay_));
00563       else
00564         service_cleanup_delay_.reset (0);
00565 
00566       if (s.history_kind_.get ())
00567         history_kind (*(s.history_kind_));
00568       else
00569         history_kind_.reset (0);
00570 
00571       if (s.history_depth_.get ())
00572         history_depth (*(s.history_depth_));
00573       else
00574         history_depth_.reset (0);
00575 
00576       if (s.max_samples_.get ())
00577         max_samples (*(s.max_samples_));
00578       else
00579         max_samples_.reset (0);
00580 
00581       if (s.max_instances_.get ())
00582         max_instances (*(s.max_instances_));
00583       else
00584         max_instances_.reset (0);
00585 
00586       if (s.max_samples_per_instance_.get ())
00587         max_samples_per_instance (*(s.max_samples_per_instance_));
00588       else
00589         max_samples_per_instance_.reset (0);
00590     }
00591 
00592     return *this;
00593   }
00594 
00595 
00596   // durabilityServiceQosPolicy
00597   bool durabilityServiceQosPolicy::
00598   service_cleanup_delay_p () const
00599   {
00600     return service_cleanup_delay_.get () != 0;
00601   }
00602 
00603   ::dds::duration const& durabilityServiceQosPolicy::
00604   service_cleanup_delay () const
00605   {
00606     return *service_cleanup_delay_;
00607   }
00608 
00609   void durabilityServiceQosPolicy::
00610   service_cleanup_delay (::dds::duration const& e)
00611   {
00612     if (service_cleanup_delay_.get ())
00613     {
00614       *service_cleanup_delay_ = e;
00615     }
00616 
00617     else
00618     {
00619       service_cleanup_delay_ = durabilityServiceQosPolicy::service_cleanup_delay_auto_ptr_type (new ::dds::duration (e));
00620       service_cleanup_delay_->container (this);
00621     }
00622   }
00623 
00624   // durabilityServiceQosPolicy
00625   bool durabilityServiceQosPolicy::
00626   history_kind_p () const
00627   {
00628     return history_kind_.get () != 0;
00629   }
00630 
00631   ::dds::historyKind const& durabilityServiceQosPolicy::
00632   history_kind () const
00633   {
00634     return *history_kind_;
00635   }
00636 
00637   void durabilityServiceQosPolicy::
00638   history_kind (::dds::historyKind const& e)
00639   {
00640     if (history_kind_.get ())
00641     {
00642       *history_kind_ = e;
00643     }
00644 
00645     else
00646     {
00647       history_kind_ = durabilityServiceQosPolicy::history_kind_auto_ptr_type (new ::dds::historyKind (e));
00648       history_kind_->container (this);
00649     }
00650   }
00651 
00652   // durabilityServiceQosPolicy
00653   bool durabilityServiceQosPolicy::
00654   history_depth_p () const
00655   {
00656     return history_depth_.get () != 0;
00657   }
00658 
00659   ::XMLSchema::positiveInteger const& durabilityServiceQosPolicy::
00660   history_depth () const
00661   {
00662     return *history_depth_;
00663   }
00664 
00665   void durabilityServiceQosPolicy::
00666   history_depth (::XMLSchema::positiveInteger const& e)
00667   {
00668     if (history_depth_.get ())
00669     {
00670       *history_depth_ = e;
00671     }
00672 
00673     else
00674     {
00675       history_depth_ = durabilityServiceQosPolicy::history_depth_auto_ptr_type (new ::XMLSchema::positiveInteger (e));
00676       history_depth_->container (this);
00677     }
00678   }
00679 
00680   // durabilityServiceQosPolicy
00681   bool durabilityServiceQosPolicy::
00682   max_samples_p () const
00683   {
00684     return max_samples_.get () != 0;
00685   }
00686 
00687   ::XMLSchema::string<ACE_TCHAR> const& durabilityServiceQosPolicy::
00688   max_samples () const
00689   {
00690     return *max_samples_;
00691   }
00692 
00693   void durabilityServiceQosPolicy::
00694   max_samples (::XMLSchema::string<ACE_TCHAR> const& e)
00695   {
00696     if (max_samples_.get ())
00697     {
00698       *max_samples_ = e;
00699     }
00700 
00701     else
00702     {
00703       max_samples_ = durabilityServiceQosPolicy::max_samples_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
00704       max_samples_->container (this);
00705     }
00706   }
00707 
00708   // durabilityServiceQosPolicy
00709   bool durabilityServiceQosPolicy::
00710   max_instances_p () const
00711   {
00712     return max_instances_.get () != 0;
00713   }
00714 
00715   ::XMLSchema::string<ACE_TCHAR> const& durabilityServiceQosPolicy::
00716   max_instances () const
00717   {
00718     return *max_instances_;
00719   }
00720 
00721   void durabilityServiceQosPolicy::
00722   max_instances (::XMLSchema::string<ACE_TCHAR> const& e)
00723   {
00724     if (max_instances_.get ())
00725     {
00726       *max_instances_ = e;
00727     }
00728 
00729     else
00730     {
00731       max_instances_ = durabilityServiceQosPolicy::max_instances_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
00732       max_instances_->container (this);
00733     }
00734   }
00735 
00736   // durabilityServiceQosPolicy
00737   bool durabilityServiceQosPolicy::
00738   max_samples_per_instance_p () const
00739   {
00740     return max_samples_per_instance_.get () != 0;
00741   }
00742 
00743   ::XMLSchema::string<ACE_TCHAR> const& durabilityServiceQosPolicy::
00744   max_samples_per_instance () const
00745   {
00746     return *max_samples_per_instance_;
00747   }
00748 
00749   void durabilityServiceQosPolicy::
00750   max_samples_per_instance (::XMLSchema::string<ACE_TCHAR> const& e)
00751   {
00752     if (max_samples_per_instance_.get ())
00753     {
00754       *max_samples_per_instance_ = e;
00755     }
00756 
00757     else
00758     {
00759       max_samples_per_instance_ = durabilityServiceQosPolicy::max_samples_per_instance_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
00760       max_samples_per_instance_->container (this);
00761     }
00762   }
00763 
00764 
00765   // entityFactoryQosPolicy
00766 
00767   entityFactoryQosPolicy::entityFactoryQosPolicy ()
00768   : ::XSCRT::Type ()
00769   {
00770   }
00771 
00772   entityFactoryQosPolicy::entityFactoryQosPolicy (entityFactoryQosPolicy const& s) :
00773   ::XSCRT::Type (s)
00774   , autoenable_created_entities_ (s.autoenable_created_entities_.get () ? new ::XMLSchema::boolean (*s.autoenable_created_entities_) : 0)
00775   {
00776     if (autoenable_created_entities_.get ()) autoenable_created_entities_->container (this);
00777   }
00778 
00779   entityFactoryQosPolicy&
00780   entityFactoryQosPolicy::operator= (entityFactoryQosPolicy const& s)
00781   {
00782     if (&s != this)
00783     {
00784       if (s.autoenable_created_entities_.get ())
00785         autoenable_created_entities (*(s.autoenable_created_entities_));
00786       else
00787         autoenable_created_entities_.reset (0);
00788     }
00789 
00790     return *this;
00791   }
00792 
00793 
00794   // entityFactoryQosPolicy
00795   bool entityFactoryQosPolicy::
00796   autoenable_created_entities_p () const
00797   {
00798     return autoenable_created_entities_.get () != 0;
00799   }
00800 
00801   ::XMLSchema::boolean const& entityFactoryQosPolicy::
00802   autoenable_created_entities () const
00803   {
00804     return *autoenable_created_entities_;
00805   }
00806 
00807   void entityFactoryQosPolicy::
00808   autoenable_created_entities (::XMLSchema::boolean const& e)
00809   {
00810     if (autoenable_created_entities_.get ())
00811     {
00812       *autoenable_created_entities_ = e;
00813     }
00814 
00815     else
00816     {
00817       autoenable_created_entities_ = entityFactoryQosPolicy::autoenable_created_entities_auto_ptr_type (new ::XMLSchema::boolean (e));
00818       autoenable_created_entities_->container (this);
00819     }
00820   }
00821 
00822 
00823   // groupDataQosPolicy
00824 
00825   groupDataQosPolicy::groupDataQosPolicy ()
00826   : ::XSCRT::Type ()
00827   {
00828   }
00829 
00830   groupDataQosPolicy::groupDataQosPolicy (groupDataQosPolicy const& s) :
00831   ::XSCRT::Type (s)
00832   , value_ (s.value_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.value_) : 0)
00833   {
00834     if (value_.get ()) value_->container (this);
00835   }
00836 
00837   groupDataQosPolicy&
00838   groupDataQosPolicy::operator= (groupDataQosPolicy const& s)
00839   {
00840     if (&s != this)
00841     {
00842       if (s.value_.get ())
00843         value (*(s.value_));
00844       else
00845         value_.reset (0);
00846     }
00847 
00848     return *this;
00849   }
00850 
00851 
00852   // groupDataQosPolicy
00853   bool groupDataQosPolicy::
00854   value_p () const
00855   {
00856     return value_.get () != 0;
00857   }
00858 
00859   ::XMLSchema::string<ACE_TCHAR> const& groupDataQosPolicy::
00860   value () const
00861   {
00862     return *value_;
00863   }
00864 
00865   void groupDataQosPolicy::
00866   value (::XMLSchema::string<ACE_TCHAR> const& e)
00867   {
00868     if (value_.get ())
00869     {
00870       *value_ = e;
00871     }
00872 
00873     else
00874     {
00875       value_ = groupDataQosPolicy::value_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
00876       value_->container (this);
00877     }
00878   }
00879 
00880 
00881   // historyQosPolicy
00882 
00883   historyQosPolicy::historyQosPolicy ()
00884   : ::XSCRT::Type ()
00885   {
00886   }
00887 
00888   historyQosPolicy::historyQosPolicy (historyQosPolicy const& s) :
00889   ::XSCRT::Type (s)
00890   , kind_ (s.kind_.get () ? new ::dds::historyKind (*s.kind_) : 0)
00891   , depth_ (s.depth_.get () ? new ::XMLSchema::positiveInteger (*s.depth_) : 0)
00892   {
00893     if (kind_.get ()) kind_->container (this);
00894     if (depth_.get ()) depth_->container (this);
00895   }
00896 
00897   historyQosPolicy&
00898   historyQosPolicy::operator= (historyQosPolicy const& s)
00899   {
00900     if (&s != this)
00901     {
00902       if (s.kind_.get ())
00903         kind (*(s.kind_));
00904       else
00905         kind_.reset (0);
00906 
00907       if (s.depth_.get ())
00908         depth (*(s.depth_));
00909       else
00910         depth_.reset (0);
00911     }
00912 
00913     return *this;
00914   }
00915 
00916 
00917   // historyQosPolicy
00918   bool historyQosPolicy::
00919   kind_p () const
00920   {
00921     return kind_.get () != 0;
00922   }
00923 
00924   ::dds::historyKind const& historyQosPolicy::
00925   kind () const
00926   {
00927     return *kind_;
00928   }
00929 
00930   void historyQosPolicy::
00931   kind (::dds::historyKind const& e)
00932   {
00933     if (kind_.get ())
00934     {
00935       *kind_ = e;
00936     }
00937 
00938     else
00939     {
00940       kind_ = historyQosPolicy::kind_auto_ptr_type (new ::dds::historyKind (e));
00941       kind_->container (this);
00942     }
00943   }
00944 
00945   // historyQosPolicy
00946   bool historyQosPolicy::
00947   depth_p () const
00948   {
00949     return depth_.get () != 0;
00950   }
00951 
00952   ::XMLSchema::positiveInteger const& historyQosPolicy::
00953   depth () const
00954   {
00955     return *depth_;
00956   }
00957 
00958   void historyQosPolicy::
00959   depth (::XMLSchema::positiveInteger const& e)
00960   {
00961     if (depth_.get ())
00962     {
00963       *depth_ = e;
00964     }
00965 
00966     else
00967     {
00968       depth_ = historyQosPolicy::depth_auto_ptr_type (new ::XMLSchema::positiveInteger (e));
00969       depth_->container (this);
00970     }
00971   }
00972 
00973 
00974   // latencyBudgetQosPolicy
00975 
00976   latencyBudgetQosPolicy::latencyBudgetQosPolicy ()
00977   : ::XSCRT::Type ()
00978   {
00979   }
00980 
00981   latencyBudgetQosPolicy::latencyBudgetQosPolicy (latencyBudgetQosPolicy const& s) :
00982   ::XSCRT::Type (s)
00983   , duration_ (s.duration_.get () ? new ::dds::duration (*s.duration_) : 0)
00984   {
00985     if (duration_.get ()) duration_->container (this);
00986   }
00987 
00988   latencyBudgetQosPolicy&
00989   latencyBudgetQosPolicy::operator= (latencyBudgetQosPolicy const& s)
00990   {
00991     if (&s != this)
00992     {
00993       if (s.duration_.get ())
00994         duration (*(s.duration_));
00995       else
00996         duration_.reset (0);
00997     }
00998 
00999     return *this;
01000   }
01001 
01002 
01003   // latencyBudgetQosPolicy
01004   bool latencyBudgetQosPolicy::
01005   duration_p () const
01006   {
01007     return duration_.get () != 0;
01008   }
01009 
01010   ::dds::duration const& latencyBudgetQosPolicy::
01011   duration () const
01012   {
01013     return *duration_;
01014   }
01015 
01016   void latencyBudgetQosPolicy::
01017   duration (::dds::duration const& e)
01018   {
01019     if (duration_.get ())
01020     {
01021       *duration_ = e;
01022     }
01023 
01024     else
01025     {
01026       duration_ = latencyBudgetQosPolicy::duration_auto_ptr_type (new ::dds::duration (e));
01027       duration_->container (this);
01028     }
01029   }
01030 
01031 
01032   // lifespanQosPolicy
01033 
01034   lifespanQosPolicy::lifespanQosPolicy ()
01035   : ::XSCRT::Type ()
01036   {
01037   }
01038 
01039   lifespanQosPolicy::lifespanQosPolicy (lifespanQosPolicy const& s) :
01040   ::XSCRT::Type (s)
01041   , duration_ (s.duration_.get () ? new ::dds::duration (*s.duration_) : 0)
01042   {
01043     if (duration_.get ()) duration_->container (this);
01044   }
01045 
01046   lifespanQosPolicy&
01047   lifespanQosPolicy::operator= (lifespanQosPolicy const& s)
01048   {
01049     if (&s != this)
01050     {
01051       if (s.duration_.get ())
01052         duration (*(s.duration_));
01053       else
01054         duration_.reset (0);
01055     }
01056 
01057     return *this;
01058   }
01059 
01060 
01061   // lifespanQosPolicy
01062   bool lifespanQosPolicy::
01063   duration_p () const
01064   {
01065     return duration_.get () != 0;
01066   }
01067 
01068   ::dds::duration const& lifespanQosPolicy::
01069   duration () const
01070   {
01071     return *duration_;
01072   }
01073 
01074   void lifespanQosPolicy::
01075   duration (::dds::duration const& e)
01076   {
01077     if (duration_.get ())
01078     {
01079       *duration_ = e;
01080     }
01081 
01082     else
01083     {
01084       duration_ = lifespanQosPolicy::duration_auto_ptr_type (new ::dds::duration (e));
01085       duration_->container (this);
01086     }
01087   }
01088 
01089 
01090   // livelinessQosPolicy
01091 
01092   livelinessQosPolicy::livelinessQosPolicy ()
01093   : ::XSCRT::Type ()
01094   {
01095   }
01096 
01097   livelinessQosPolicy::livelinessQosPolicy (livelinessQosPolicy const& s) :
01098   ::XSCRT::Type (s)
01099   , kind_ (s.kind_.get () ? new ::dds::livelinessKind (*s.kind_) : 0)
01100   , lease_duration_ (s.lease_duration_.get () ? new ::dds::duration (*s.lease_duration_) : 0)
01101   {
01102     if (kind_.get ()) kind_->container (this);
01103     if (lease_duration_.get ()) lease_duration_->container (this);
01104   }
01105 
01106   livelinessQosPolicy&
01107   livelinessQosPolicy::operator= (livelinessQosPolicy const& s)
01108   {
01109     if (&s != this)
01110     {
01111       if (s.kind_.get ())
01112         kind (*(s.kind_));
01113       else
01114         kind_.reset (0);
01115 
01116       if (s.lease_duration_.get ())
01117         lease_duration (*(s.lease_duration_));
01118       else
01119         lease_duration_.reset (0);
01120     }
01121 
01122     return *this;
01123   }
01124 
01125 
01126   // livelinessQosPolicy
01127   bool livelinessQosPolicy::
01128   kind_p () const
01129   {
01130     return kind_.get () != 0;
01131   }
01132 
01133   ::dds::livelinessKind const& livelinessQosPolicy::
01134   kind () const
01135   {
01136     return *kind_;
01137   }
01138 
01139   void livelinessQosPolicy::
01140   kind (::dds::livelinessKind const& e)
01141   {
01142     if (kind_.get ())
01143     {
01144       *kind_ = e;
01145     }
01146 
01147     else
01148     {
01149       kind_ = livelinessQosPolicy::kind_auto_ptr_type (new ::dds::livelinessKind (e));
01150       kind_->container (this);
01151     }
01152   }
01153 
01154   // livelinessQosPolicy
01155   bool livelinessQosPolicy::
01156   lease_duration_p () const
01157   {
01158     return lease_duration_.get () != 0;
01159   }
01160 
01161   ::dds::duration const& livelinessQosPolicy::
01162   lease_duration () const
01163   {
01164     return *lease_duration_;
01165   }
01166 
01167   void livelinessQosPolicy::
01168   lease_duration (::dds::duration const& e)
01169   {
01170     if (lease_duration_.get ())
01171     {
01172       *lease_duration_ = e;
01173     }
01174 
01175     else
01176     {
01177       lease_duration_ = livelinessQosPolicy::lease_duration_auto_ptr_type (new ::dds::duration (e));
01178       lease_duration_->container (this);
01179     }
01180   }
01181 
01182 
01183   // ownershipQosPolicy
01184 
01185   ownershipQosPolicy::ownershipQosPolicy ()
01186   : ::XSCRT::Type ()
01187   {
01188   }
01189 
01190   ownershipQosPolicy::ownershipQosPolicy (ownershipQosPolicy const& s) :
01191   ::XSCRT::Type (s)
01192   , kind_ (s.kind_.get () ? new ::dds::ownershipKind (*s.kind_) : 0)
01193   {
01194     if (kind_.get ()) kind_->container (this);
01195   }
01196 
01197   ownershipQosPolicy&
01198   ownershipQosPolicy::operator= (ownershipQosPolicy const& s)
01199   {
01200     if (&s != this)
01201     {
01202       if (s.kind_.get ())
01203         kind (*(s.kind_));
01204       else
01205         kind_.reset (0);
01206     }
01207 
01208     return *this;
01209   }
01210 
01211 
01212   // ownershipQosPolicy
01213   bool ownershipQosPolicy::
01214   kind_p () const
01215   {
01216     return kind_.get () != 0;
01217   }
01218 
01219   ::dds::ownershipKind const& ownershipQosPolicy::
01220   kind () const
01221   {
01222     return *kind_;
01223   }
01224 
01225   void ownershipQosPolicy::
01226   kind (::dds::ownershipKind const& e)
01227   {
01228     if (kind_.get ())
01229     {
01230       *kind_ = e;
01231     }
01232 
01233     else
01234     {
01235       kind_ = ownershipQosPolicy::kind_auto_ptr_type (new ::dds::ownershipKind (e));
01236       kind_->container (this);
01237     }
01238   }
01239 
01240 
01241   // ownershipStrengthQosPolicy
01242 
01243   ownershipStrengthQosPolicy::ownershipStrengthQosPolicy ()
01244   : ::XSCRT::Type ()
01245   {
01246   }
01247 
01248   ownershipStrengthQosPolicy::ownershipStrengthQosPolicy (ownershipStrengthQosPolicy const& s) :
01249   ::XSCRT::Type (s)
01250   , value_ (s.value_.get () ? new ::XMLSchema::nonNegativeInteger (*s.value_) : 0)
01251   {
01252     if (value_.get ()) value_->container (this);
01253   }
01254 
01255   ownershipStrengthQosPolicy&
01256   ownershipStrengthQosPolicy::operator= (ownershipStrengthQosPolicy const& s)
01257   {
01258     if (&s != this)
01259     {
01260       if (s.value_.get ())
01261         value (*(s.value_));
01262       else
01263         value_.reset (0);
01264     }
01265 
01266     return *this;
01267   }
01268 
01269 
01270   // ownershipStrengthQosPolicy
01271   bool ownershipStrengthQosPolicy::
01272   value_p () const
01273   {
01274     return value_.get () != 0;
01275   }
01276 
01277   ::XMLSchema::nonNegativeInteger const& ownershipStrengthQosPolicy::
01278   value () const
01279   {
01280     return *value_;
01281   }
01282 
01283   void ownershipStrengthQosPolicy::
01284   value (::XMLSchema::nonNegativeInteger const& e)
01285   {
01286     if (value_.get ())
01287     {
01288       *value_ = e;
01289     }
01290 
01291     else
01292     {
01293       value_ = ownershipStrengthQosPolicy::value_auto_ptr_type (new ::XMLSchema::nonNegativeInteger (e));
01294       value_->container (this);
01295     }
01296   }
01297 
01298 
01299   // partitionQosPolicy
01300 
01301   partitionQosPolicy::partitionQosPolicy ()
01302   : ::XSCRT::Type ()
01303   {
01304   }
01305 
01306   partitionQosPolicy::partitionQosPolicy (partitionQosPolicy const& s) :
01307   ::XSCRT::Type (s)
01308   , name_ (s.name_.get () ? new ::dds::stringSeq (*s.name_) : 0)
01309   {
01310     if (name_.get ()) name_->container (this);
01311   }
01312 
01313   partitionQosPolicy&
01314   partitionQosPolicy::operator= (partitionQosPolicy const& s)
01315   {
01316     if (&s != this)
01317     {
01318       if (s.name_.get ())
01319         name (*(s.name_));
01320       else
01321         name_.reset (0);
01322     }
01323 
01324     return *this;
01325   }
01326 
01327 
01328   // partitionQosPolicy
01329   bool partitionQosPolicy::
01330   name_p () const
01331   {
01332     return name_.get () != 0;
01333   }
01334 
01335   ::dds::stringSeq const& partitionQosPolicy::
01336   name () const
01337   {
01338     return *name_;
01339   }
01340 
01341   void partitionQosPolicy::
01342   name (::dds::stringSeq const& e)
01343   {
01344     if (name_.get ())
01345     {
01346       *name_ = e;
01347     }
01348 
01349     else
01350     {
01351       name_ = partitionQosPolicy::name_auto_ptr_type (new ::dds::stringSeq (e));
01352       name_->container (this);
01353     }
01354   }
01355 
01356 
01357   // presentationQosPolicy
01358 
01359   presentationQosPolicy::presentationQosPolicy ()
01360   : ::XSCRT::Type ()
01361   {
01362   }
01363 
01364   presentationQosPolicy::presentationQosPolicy (presentationQosPolicy const& s) :
01365   ::XSCRT::Type (s)
01366   , access_scope_ (s.access_scope_.get () ? new ::dds::presentationAccessScopeKind (*s.access_scope_) : 0)
01367   , coherent_access_ (s.coherent_access_.get () ? new ::XMLSchema::boolean (*s.coherent_access_) : 0)
01368   , ordered_access_ (s.ordered_access_.get () ? new ::XMLSchema::boolean (*s.ordered_access_) : 0)
01369   {
01370     if (access_scope_.get ()) access_scope_->container (this);
01371     if (coherent_access_.get ()) coherent_access_->container (this);
01372     if (ordered_access_.get ()) ordered_access_->container (this);
01373   }
01374 
01375   presentationQosPolicy&
01376   presentationQosPolicy::operator= (presentationQosPolicy const& s)
01377   {
01378     if (&s != this)
01379     {
01380       if (s.access_scope_.get ())
01381         access_scope (*(s.access_scope_));
01382       else
01383         access_scope_.reset (0);
01384 
01385       if (s.coherent_access_.get ())
01386         coherent_access (*(s.coherent_access_));
01387       else
01388         coherent_access_.reset (0);
01389 
01390       if (s.ordered_access_.get ())
01391         ordered_access (*(s.ordered_access_));
01392       else
01393         ordered_access_.reset (0);
01394     }
01395 
01396     return *this;
01397   }
01398 
01399 
01400   // presentationQosPolicy
01401   bool presentationQosPolicy::
01402   access_scope_p () const
01403   {
01404     return access_scope_.get () != 0;
01405   }
01406 
01407   ::dds::presentationAccessScopeKind const& presentationQosPolicy::
01408   access_scope () const
01409   {
01410     return *access_scope_;
01411   }
01412 
01413   void presentationQosPolicy::
01414   access_scope (::dds::presentationAccessScopeKind const& e)
01415   {
01416     if (access_scope_.get ())
01417     {
01418       *access_scope_ = e;
01419     }
01420 
01421     else
01422     {
01423       access_scope_ = presentationQosPolicy::access_scope_auto_ptr_type (new ::dds::presentationAccessScopeKind (e));
01424       access_scope_->container (this);
01425     }
01426   }
01427 
01428   // presentationQosPolicy
01429   bool presentationQosPolicy::
01430   coherent_access_p () const
01431   {
01432     return coherent_access_.get () != 0;
01433   }
01434 
01435   ::XMLSchema::boolean const& presentationQosPolicy::
01436   coherent_access () const
01437   {
01438     return *coherent_access_;
01439   }
01440 
01441   void presentationQosPolicy::
01442   coherent_access (::XMLSchema::boolean const& e)
01443   {
01444     if (coherent_access_.get ())
01445     {
01446       *coherent_access_ = e;
01447     }
01448 
01449     else
01450     {
01451       coherent_access_ = presentationQosPolicy::coherent_access_auto_ptr_type (new ::XMLSchema::boolean (e));
01452       coherent_access_->container (this);
01453     }
01454   }
01455 
01456   // presentationQosPolicy
01457   bool presentationQosPolicy::
01458   ordered_access_p () const
01459   {
01460     return ordered_access_.get () != 0;
01461   }
01462 
01463   ::XMLSchema::boolean const& presentationQosPolicy::
01464   ordered_access () const
01465   {
01466     return *ordered_access_;
01467   }
01468 
01469   void presentationQosPolicy::
01470   ordered_access (::XMLSchema::boolean const& e)
01471   {
01472     if (ordered_access_.get ())
01473     {
01474       *ordered_access_ = e;
01475     }
01476 
01477     else
01478     {
01479       ordered_access_ = presentationQosPolicy::ordered_access_auto_ptr_type (new ::XMLSchema::boolean (e));
01480       ordered_access_->container (this);
01481     }
01482   }
01483 
01484 
01485   // readerDataLifecycleQosPolicy
01486 
01487   readerDataLifecycleQosPolicy::readerDataLifecycleQosPolicy ()
01488   : ::XSCRT::Type ()
01489   {
01490   }
01491 
01492   readerDataLifecycleQosPolicy::readerDataLifecycleQosPolicy (readerDataLifecycleQosPolicy const& s) :
01493   ::XSCRT::Type (s)
01494   , autopurge_nowriter_samples_delay_ (s.autopurge_nowriter_samples_delay_.get () ? new ::dds::duration (*s.autopurge_nowriter_samples_delay_) : 0)
01495   , autopurge_disposed_samples_delay_ (s.autopurge_disposed_samples_delay_.get () ? new ::dds::duration (*s.autopurge_disposed_samples_delay_) : 0)
01496   {
01497     if (autopurge_nowriter_samples_delay_.get ()) autopurge_nowriter_samples_delay_->container (this);
01498     if (autopurge_disposed_samples_delay_.get ()) autopurge_disposed_samples_delay_->container (this);
01499   }
01500 
01501   readerDataLifecycleQosPolicy&
01502   readerDataLifecycleQosPolicy::operator= (readerDataLifecycleQosPolicy const& s)
01503   {
01504     if (&s != this)
01505     {
01506       if (s.autopurge_nowriter_samples_delay_.get ())
01507         autopurge_nowriter_samples_delay (*(s.autopurge_nowriter_samples_delay_));
01508       else
01509         autopurge_nowriter_samples_delay_.reset (0);
01510 
01511       if (s.autopurge_disposed_samples_delay_.get ())
01512         autopurge_disposed_samples_delay (*(s.autopurge_disposed_samples_delay_));
01513       else
01514         autopurge_disposed_samples_delay_.reset (0);
01515     }
01516 
01517     return *this;
01518   }
01519 
01520 
01521   // readerDataLifecycleQosPolicy
01522   bool readerDataLifecycleQosPolicy::
01523   autopurge_nowriter_samples_delay_p () const
01524   {
01525     return autopurge_nowriter_samples_delay_.get () != 0;
01526   }
01527 
01528   ::dds::duration const& readerDataLifecycleQosPolicy::
01529   autopurge_nowriter_samples_delay () const
01530   {
01531     return *autopurge_nowriter_samples_delay_;
01532   }
01533 
01534   void readerDataLifecycleQosPolicy::
01535   autopurge_nowriter_samples_delay (::dds::duration const& e)
01536   {
01537     if (autopurge_nowriter_samples_delay_.get ())
01538     {
01539       *autopurge_nowriter_samples_delay_ = e;
01540     }
01541 
01542     else
01543     {
01544       autopurge_nowriter_samples_delay_ = readerDataLifecycleQosPolicy::autopurge_nowriter_samples_delay_auto_ptr_type (new ::dds::duration (e));
01545       autopurge_nowriter_samples_delay_->container (this);
01546     }
01547   }
01548 
01549   // readerDataLifecycleQosPolicy
01550   bool readerDataLifecycleQosPolicy::
01551   autopurge_disposed_samples_delay_p () const
01552   {
01553     return autopurge_disposed_samples_delay_.get () != 0;
01554   }
01555 
01556   ::dds::duration const& readerDataLifecycleQosPolicy::
01557   autopurge_disposed_samples_delay () const
01558   {
01559     return *autopurge_disposed_samples_delay_;
01560   }
01561 
01562   void readerDataLifecycleQosPolicy::
01563   autopurge_disposed_samples_delay (::dds::duration const& e)
01564   {
01565     if (autopurge_disposed_samples_delay_.get ())
01566     {
01567       *autopurge_disposed_samples_delay_ = e;
01568     }
01569 
01570     else
01571     {
01572       autopurge_disposed_samples_delay_ = readerDataLifecycleQosPolicy::autopurge_disposed_samples_delay_auto_ptr_type (new ::dds::duration (e));
01573       autopurge_disposed_samples_delay_->container (this);
01574     }
01575   }
01576 
01577 
01578   // reliabilityQosPolicy
01579 
01580   reliabilityQosPolicy::reliabilityQosPolicy ()
01581   : ::XSCRT::Type ()
01582   {
01583   }
01584 
01585   reliabilityQosPolicy::reliabilityQosPolicy (reliabilityQosPolicy const& s) :
01586   ::XSCRT::Type (s)
01587   , kind_ (s.kind_.get () ? new ::dds::reliabilityKind (*s.kind_) : 0)
01588   , max_blocking_time_ (s.max_blocking_time_.get () ? new ::dds::duration (*s.max_blocking_time_) : 0)
01589   {
01590     if (kind_.get ()) kind_->container (this);
01591     if (max_blocking_time_.get ()) max_blocking_time_->container (this);
01592   }
01593 
01594   reliabilityQosPolicy&
01595   reliabilityQosPolicy::operator= (reliabilityQosPolicy const& s)
01596   {
01597     if (&s != this)
01598     {
01599       if (s.kind_.get ())
01600         kind (*(s.kind_));
01601       else
01602         kind_.reset (0);
01603 
01604       if (s.max_blocking_time_.get ())
01605         max_blocking_time (*(s.max_blocking_time_));
01606       else
01607         max_blocking_time_.reset (0);
01608     }
01609 
01610     return *this;
01611   }
01612 
01613 
01614   // reliabilityQosPolicy
01615   bool reliabilityQosPolicy::
01616   kind_p () const
01617   {
01618     return kind_.get () != 0;
01619   }
01620 
01621   ::dds::reliabilityKind const& reliabilityQosPolicy::
01622   kind () const
01623   {
01624     return *kind_;
01625   }
01626 
01627   void reliabilityQosPolicy::
01628   kind (::dds::reliabilityKind const& e)
01629   {
01630     if (kind_.get ())
01631     {
01632       *kind_ = e;
01633     }
01634 
01635     else
01636     {
01637       kind_ = reliabilityQosPolicy::kind_auto_ptr_type (new ::dds::reliabilityKind (e));
01638       kind_->container (this);
01639     }
01640   }
01641 
01642   // reliabilityQosPolicy
01643   bool reliabilityQosPolicy::
01644   max_blocking_time_p () const
01645   {
01646     return max_blocking_time_.get () != 0;
01647   }
01648 
01649   ::dds::duration const& reliabilityQosPolicy::
01650   max_blocking_time () const
01651   {
01652     return *max_blocking_time_;
01653   }
01654 
01655   void reliabilityQosPolicy::
01656   max_blocking_time (::dds::duration const& e)
01657   {
01658     if (max_blocking_time_.get ())
01659     {
01660       *max_blocking_time_ = e;
01661     }
01662 
01663     else
01664     {
01665       max_blocking_time_ = reliabilityQosPolicy::max_blocking_time_auto_ptr_type (new ::dds::duration (e));
01666       max_blocking_time_->container (this);
01667     }
01668   }
01669 
01670 
01671   // resourceLimitsQosPolicy
01672 
01673   resourceLimitsQosPolicy::resourceLimitsQosPolicy ()
01674   : ::XSCRT::Type ()
01675   {
01676   }
01677 
01678   resourceLimitsQosPolicy::resourceLimitsQosPolicy (resourceLimitsQosPolicy const& s) :
01679   ::XSCRT::Type (s)
01680   , max_samples_ (s.max_samples_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.max_samples_) : 0)
01681   , max_instances_ (s.max_instances_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.max_instances_) : 0)
01682   , max_samples_per_instance_ (s.max_samples_per_instance_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.max_samples_per_instance_) : 0)
01683   , initial_samples_ (s.initial_samples_.get () ? new ::XMLSchema::positiveInteger (*s.initial_samples_) : 0)
01684   , initial_instances_ (s.initial_instances_.get () ? new ::XMLSchema::positiveInteger (*s.initial_instances_) : 0)
01685   {
01686     if (max_samples_.get ()) max_samples_->container (this);
01687     if (max_instances_.get ()) max_instances_->container (this);
01688     if (max_samples_per_instance_.get ()) max_samples_per_instance_->container (this);
01689     if (initial_samples_.get ()) initial_samples_->container (this);
01690     if (initial_instances_.get ()) initial_instances_->container (this);
01691   }
01692 
01693   resourceLimitsQosPolicy&
01694   resourceLimitsQosPolicy::operator= (resourceLimitsQosPolicy const& s)
01695   {
01696     if (&s != this)
01697     {
01698       if (s.max_samples_.get ())
01699         max_samples (*(s.max_samples_));
01700       else
01701         max_samples_.reset (0);
01702 
01703       if (s.max_instances_.get ())
01704         max_instances (*(s.max_instances_));
01705       else
01706         max_instances_.reset (0);
01707 
01708       if (s.max_samples_per_instance_.get ())
01709         max_samples_per_instance (*(s.max_samples_per_instance_));
01710       else
01711         max_samples_per_instance_.reset (0);
01712 
01713       if (s.initial_samples_.get ())
01714         initial_samples (*(s.initial_samples_));
01715       else
01716         initial_samples_.reset (0);
01717 
01718       if (s.initial_instances_.get ())
01719         initial_instances (*(s.initial_instances_));
01720       else
01721         initial_instances_.reset (0);
01722     }
01723 
01724     return *this;
01725   }
01726 
01727 
01728   // resourceLimitsQosPolicy
01729   bool resourceLimitsQosPolicy::
01730   max_samples_p () const
01731   {
01732     return max_samples_.get () != 0;
01733   }
01734 
01735   ::XMLSchema::string<ACE_TCHAR> const& resourceLimitsQosPolicy::
01736   max_samples () const
01737   {
01738     return *max_samples_;
01739   }
01740 
01741   void resourceLimitsQosPolicy::
01742   max_samples (::XMLSchema::string<ACE_TCHAR> const& e)
01743   {
01744     if (max_samples_.get ())
01745     {
01746       *max_samples_ = e;
01747     }
01748 
01749     else
01750     {
01751       max_samples_ = resourceLimitsQosPolicy::max_samples_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
01752       max_samples_->container (this);
01753     }
01754   }
01755 
01756   // resourceLimitsQosPolicy
01757   bool resourceLimitsQosPolicy::
01758   max_instances_p () const
01759   {
01760     return max_instances_.get () != 0;
01761   }
01762 
01763   ::XMLSchema::string<ACE_TCHAR> const& resourceLimitsQosPolicy::
01764   max_instances () const
01765   {
01766     return *max_instances_;
01767   }
01768 
01769   void resourceLimitsQosPolicy::
01770   max_instances (::XMLSchema::string<ACE_TCHAR> const& e)
01771   {
01772     if (max_instances_.get ())
01773     {
01774       *max_instances_ = e;
01775     }
01776 
01777     else
01778     {
01779       max_instances_ = resourceLimitsQosPolicy::max_instances_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
01780       max_instances_->container (this);
01781     }
01782   }
01783 
01784   // resourceLimitsQosPolicy
01785   bool resourceLimitsQosPolicy::
01786   max_samples_per_instance_p () const
01787   {
01788     return max_samples_per_instance_.get () != 0;
01789   }
01790 
01791   ::XMLSchema::string<ACE_TCHAR> const& resourceLimitsQosPolicy::
01792   max_samples_per_instance () const
01793   {
01794     return *max_samples_per_instance_;
01795   }
01796 
01797   void resourceLimitsQosPolicy::
01798   max_samples_per_instance (::XMLSchema::string<ACE_TCHAR> const& e)
01799   {
01800     if (max_samples_per_instance_.get ())
01801     {
01802       *max_samples_per_instance_ = e;
01803     }
01804 
01805     else
01806     {
01807       max_samples_per_instance_ = resourceLimitsQosPolicy::max_samples_per_instance_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
01808       max_samples_per_instance_->container (this);
01809     }
01810   }
01811 
01812   // resourceLimitsQosPolicy
01813   bool resourceLimitsQosPolicy::
01814   initial_samples_p () const
01815   {
01816     return initial_samples_.get () != 0;
01817   }
01818 
01819   ::XMLSchema::positiveInteger const& resourceLimitsQosPolicy::
01820   initial_samples () const
01821   {
01822     return *initial_samples_;
01823   }
01824 
01825   void resourceLimitsQosPolicy::
01826   initial_samples (::XMLSchema::positiveInteger const& e)
01827   {
01828     if (initial_samples_.get ())
01829     {
01830       *initial_samples_ = e;
01831     }
01832 
01833     else
01834     {
01835       initial_samples_ = resourceLimitsQosPolicy::initial_samples_auto_ptr_type (new ::XMLSchema::positiveInteger (e));
01836       initial_samples_->container (this);
01837     }
01838   }
01839 
01840   // resourceLimitsQosPolicy
01841   bool resourceLimitsQosPolicy::
01842   initial_instances_p () const
01843   {
01844     return initial_instances_.get () != 0;
01845   }
01846 
01847   ::XMLSchema::positiveInteger const& resourceLimitsQosPolicy::
01848   initial_instances () const
01849   {
01850     return *initial_instances_;
01851   }
01852 
01853   void resourceLimitsQosPolicy::
01854   initial_instances (::XMLSchema::positiveInteger const& e)
01855   {
01856     if (initial_instances_.get ())
01857     {
01858       *initial_instances_ = e;
01859     }
01860 
01861     else
01862     {
01863       initial_instances_ = resourceLimitsQosPolicy::initial_instances_auto_ptr_type (new ::XMLSchema::positiveInteger (e));
01864       initial_instances_->container (this);
01865     }
01866   }
01867 
01868 
01869   // timeBasedFilterQosPolicy
01870 
01871   timeBasedFilterQosPolicy::timeBasedFilterQosPolicy ()
01872   : ::XSCRT::Type ()
01873   {
01874   }
01875 
01876   timeBasedFilterQosPolicy::timeBasedFilterQosPolicy (timeBasedFilterQosPolicy const& s) :
01877   ::XSCRT::Type (s)
01878   , minimum_separation_ (s.minimum_separation_.get () ? new ::dds::duration (*s.minimum_separation_) : 0)
01879   {
01880     if (minimum_separation_.get ()) minimum_separation_->container (this);
01881   }
01882 
01883   timeBasedFilterQosPolicy&
01884   timeBasedFilterQosPolicy::operator= (timeBasedFilterQosPolicy const& s)
01885   {
01886     if (&s != this)
01887     {
01888       if (s.minimum_separation_.get ())
01889         minimum_separation (*(s.minimum_separation_));
01890       else
01891         minimum_separation_.reset (0);
01892     }
01893 
01894     return *this;
01895   }
01896 
01897 
01898   // timeBasedFilterQosPolicy
01899   bool timeBasedFilterQosPolicy::
01900   minimum_separation_p () const
01901   {
01902     return minimum_separation_.get () != 0;
01903   }
01904 
01905   ::dds::duration const& timeBasedFilterQosPolicy::
01906   minimum_separation () const
01907   {
01908     return *minimum_separation_;
01909   }
01910 
01911   void timeBasedFilterQosPolicy::
01912   minimum_separation (::dds::duration const& e)
01913   {
01914     if (minimum_separation_.get ())
01915     {
01916       *minimum_separation_ = e;
01917     }
01918 
01919     else
01920     {
01921       minimum_separation_ = timeBasedFilterQosPolicy::minimum_separation_auto_ptr_type (new ::dds::duration (e));
01922       minimum_separation_->container (this);
01923     }
01924   }
01925 
01926 
01927   // topicDataQosPolicy
01928 
01929   topicDataQosPolicy::topicDataQosPolicy ()
01930   : ::XSCRT::Type ()
01931   {
01932   }
01933 
01934   topicDataQosPolicy::topicDataQosPolicy (topicDataQosPolicy const& s) :
01935   ::XSCRT::Type (s)
01936   , value_ (s.value_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.value_) : 0)
01937   {
01938     if (value_.get ()) value_->container (this);
01939   }
01940 
01941   topicDataQosPolicy&
01942   topicDataQosPolicy::operator= (topicDataQosPolicy const& s)
01943   {
01944     if (&s != this)
01945     {
01946       if (s.value_.get ())
01947         value (*(s.value_));
01948       else
01949         value_.reset (0);
01950     }
01951 
01952     return *this;
01953   }
01954 
01955 
01956   // topicDataQosPolicy
01957   bool topicDataQosPolicy::
01958   value_p () const
01959   {
01960     return value_.get () != 0;
01961   }
01962 
01963   ::XMLSchema::string<ACE_TCHAR> const& topicDataQosPolicy::
01964   value () const
01965   {
01966     return *value_;
01967   }
01968 
01969   void topicDataQosPolicy::
01970   value (::XMLSchema::string<ACE_TCHAR> const& e)
01971   {
01972     if (value_.get ())
01973     {
01974       *value_ = e;
01975     }
01976 
01977     else
01978     {
01979       value_ = topicDataQosPolicy::value_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
01980       value_->container (this);
01981     }
01982   }
01983 
01984 
01985   // transportPriorityQosPolicy
01986 
01987   transportPriorityQosPolicy::transportPriorityQosPolicy ()
01988   : ::XSCRT::Type ()
01989   {
01990   }
01991 
01992   transportPriorityQosPolicy::transportPriorityQosPolicy (transportPriorityQosPolicy const& s) :
01993   ::XSCRT::Type (s)
01994   , value_ (s.value_.get () ? new ::XMLSchema::nonNegativeInteger (*s.value_) : 0)
01995   {
01996     if (value_.get ()) value_->container (this);
01997   }
01998 
01999   transportPriorityQosPolicy&
02000   transportPriorityQosPolicy::operator= (transportPriorityQosPolicy const& s)
02001   {
02002     if (&s != this)
02003     {
02004       if (s.value_.get ())
02005         value (*(s.value_));
02006       else
02007         value_.reset (0);
02008     }
02009 
02010     return *this;
02011   }
02012 
02013 
02014   // transportPriorityQosPolicy
02015   bool transportPriorityQosPolicy::
02016   value_p () const
02017   {
02018     return value_.get () != 0;
02019   }
02020 
02021   ::XMLSchema::nonNegativeInteger const& transportPriorityQosPolicy::
02022   value () const
02023   {
02024     return *value_;
02025   }
02026 
02027   void transportPriorityQosPolicy::
02028   value (::XMLSchema::nonNegativeInteger const& e)
02029   {
02030     if (value_.get ())
02031     {
02032       *value_ = e;
02033     }
02034 
02035     else
02036     {
02037       value_ = transportPriorityQosPolicy::value_auto_ptr_type (new ::XMLSchema::nonNegativeInteger (e));
02038       value_->container (this);
02039     }
02040   }
02041 
02042 
02043   // userDataQosPolicy
02044 
02045   userDataQosPolicy::userDataQosPolicy ()
02046   : ::XSCRT::Type ()
02047   {
02048   }
02049 
02050   userDataQosPolicy::userDataQosPolicy (userDataQosPolicy const& s) :
02051   ::XSCRT::Type (s)
02052   , value_ (s.value_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.value_) : 0)
02053   {
02054     if (value_.get ()) value_->container (this);
02055   }
02056 
02057   userDataQosPolicy&
02058   userDataQosPolicy::operator= (userDataQosPolicy const& s)
02059   {
02060     if (&s != this)
02061     {
02062       if (s.value_.get ())
02063         value (*(s.value_));
02064       else
02065         value_.reset (0);
02066     }
02067 
02068     return *this;
02069   }
02070 
02071 
02072   // userDataQosPolicy
02073   bool userDataQosPolicy::
02074   value_p () const
02075   {
02076     return value_.get () != 0;
02077   }
02078 
02079   ::XMLSchema::string<ACE_TCHAR> const& userDataQosPolicy::
02080   value () const
02081   {
02082     return *value_;
02083   }
02084 
02085   void userDataQosPolicy::
02086   value (::XMLSchema::string<ACE_TCHAR> const& e)
02087   {
02088     if (value_.get ())
02089     {
02090       *value_ = e;
02091     }
02092 
02093     else
02094     {
02095       value_ = userDataQosPolicy::value_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
02096       value_->container (this);
02097     }
02098   }
02099 
02100 
02101   // writerDataLifecycleQosPolicy
02102 
02103   writerDataLifecycleQosPolicy::writerDataLifecycleQosPolicy ()
02104   : ::XSCRT::Type ()
02105   {
02106   }
02107 
02108   writerDataLifecycleQosPolicy::writerDataLifecycleQosPolicy (writerDataLifecycleQosPolicy const& s) :
02109   ::XSCRT::Type (s)
02110   , autodispose_unregistered_instances_ (s.autodispose_unregistered_instances_.get () ? new ::XMLSchema::boolean (*s.autodispose_unregistered_instances_) : 0)
02111   {
02112     if (autodispose_unregistered_instances_.get ()) autodispose_unregistered_instances_->container (this);
02113   }
02114 
02115   writerDataLifecycleQosPolicy&
02116   writerDataLifecycleQosPolicy::operator= (writerDataLifecycleQosPolicy const& s)
02117   {
02118     if (&s != this)
02119     {
02120       if (s.autodispose_unregistered_instances_.get ())
02121         autodispose_unregistered_instances (*(s.autodispose_unregistered_instances_));
02122       else
02123         autodispose_unregistered_instances_.reset (0);
02124     }
02125 
02126     return *this;
02127   }
02128 
02129 
02130   // writerDataLifecycleQosPolicy
02131   bool writerDataLifecycleQosPolicy::
02132   autodispose_unregistered_instances_p () const
02133   {
02134     return autodispose_unregistered_instances_.get () != 0;
02135   }
02136 
02137   ::XMLSchema::boolean const& writerDataLifecycleQosPolicy::
02138   autodispose_unregistered_instances () const
02139   {
02140     return *autodispose_unregistered_instances_;
02141   }
02142 
02143   void writerDataLifecycleQosPolicy::
02144   autodispose_unregistered_instances (::XMLSchema::boolean const& e)
02145   {
02146     if (autodispose_unregistered_instances_.get ())
02147     {
02148       *autodispose_unregistered_instances_ = e;
02149     }
02150 
02151     else
02152     {
02153       autodispose_unregistered_instances_ = writerDataLifecycleQosPolicy::autodispose_unregistered_instances_auto_ptr_type (new ::XMLSchema::boolean (e));
02154       autodispose_unregistered_instances_->container (this);
02155     }
02156   }
02157 
02158 
02159   // domainparticipantQos
02160 
02161   domainparticipantQos::domainparticipantQos ()
02162   : ::XSCRT::Type ()
02163   {
02164   }
02165 
02166   domainparticipantQos::domainparticipantQos (domainparticipantQos const& s) :
02167   ::XSCRT::Type (s)
02168   , user_data_ (s.user_data_.get () ? new ::dds::userDataQosPolicy (*s.user_data_) : 0)
02169   , entity_factory_ (s.entity_factory_.get () ? new ::dds::entityFactoryQosPolicy (*s.entity_factory_) : 0)
02170   , name_ (s.name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.name_) : 0)
02171   , base_name_ (s.base_name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.base_name_) : 0)
02172   {
02173     if (user_data_.get ()) user_data_->container (this);
02174     if (entity_factory_.get ()) entity_factory_->container (this);
02175     if (name_.get ()) name_->container (this);
02176     if (base_name_.get ()) base_name_->container (this);
02177   }
02178 
02179   domainparticipantQos&
02180   domainparticipantQos::operator= (domainparticipantQos const& s)
02181   {
02182     if (&s != this)
02183     {
02184       if (s.user_data_.get ())
02185         user_data (*(s.user_data_));
02186       else
02187         user_data_.reset (0);
02188 
02189       if (s.entity_factory_.get ())
02190         entity_factory (*(s.entity_factory_));
02191       else
02192         entity_factory_.reset (0);
02193 
02194       if (s.name_.get ()) name (*(s.name_));
02195       else name_.reset (0);
02196 
02197       if (s.base_name_.get ()) base_name (*(s.base_name_));
02198       else base_name_.reset (0);
02199     }
02200 
02201     return *this;
02202   }
02203 
02204 
02205   // domainparticipantQos
02206   bool domainparticipantQos::
02207   user_data_p () const
02208   {
02209     return user_data_.get () != 0;
02210   }
02211 
02212   ::dds::userDataQosPolicy const& domainparticipantQos::
02213   user_data () const
02214   {
02215     return *user_data_;
02216   }
02217 
02218   void domainparticipantQos::
02219   user_data (::dds::userDataQosPolicy const& e)
02220   {
02221     if (user_data_.get ())
02222     {
02223       *user_data_ = e;
02224     }
02225 
02226     else
02227     {
02228       user_data_ = domainparticipantQos::user_data_auto_ptr_type (new ::dds::userDataQosPolicy (e));
02229       user_data_->container (this);
02230     }
02231   }
02232 
02233   // domainparticipantQos
02234   bool domainparticipantQos::
02235   entity_factory_p () const
02236   {
02237     return entity_factory_.get () != 0;
02238   }
02239 
02240   ::dds::entityFactoryQosPolicy const& domainparticipantQos::
02241   entity_factory () const
02242   {
02243     return *entity_factory_;
02244   }
02245 
02246   void domainparticipantQos::
02247   entity_factory (::dds::entityFactoryQosPolicy const& e)
02248   {
02249     if (entity_factory_.get ())
02250     {
02251       *entity_factory_ = e;
02252     }
02253 
02254     else
02255     {
02256       entity_factory_ = domainparticipantQos::entity_factory_auto_ptr_type (new ::dds::entityFactoryQosPolicy (e));
02257       entity_factory_->container (this);
02258     }
02259   }
02260 
02261   // domainparticipantQos
02262   bool domainparticipantQos::
02263   name_p () const
02264   {
02265     return name_.get () != 0;
02266   }
02267 
02268   ::XMLSchema::string<ACE_TCHAR> const& domainparticipantQos::
02269   name () const
02270   {
02271     return *name_;
02272   }
02273 
02274   ::XMLSchema::string<ACE_TCHAR>& domainparticipantQos::
02275   name ()
02276   {
02277     return *name_;
02278   }
02279 
02280   void domainparticipantQos::
02281   name (::XMLSchema::string<ACE_TCHAR> const& e)
02282   {
02283     if (name_.get ())
02284     {
02285       *name_ = e;
02286     }
02287 
02288     else
02289     {
02290       name_ = domainparticipantQos::name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
02291       name_->container (this);
02292     }
02293   }
02294 
02295   // domainparticipantQos
02296   bool domainparticipantQos::
02297   base_name_p () const
02298   {
02299     return base_name_.get () != 0;
02300   }
02301 
02302   ::XMLSchema::string<ACE_TCHAR> const& domainparticipantQos::
02303   base_name () const
02304   {
02305     return *base_name_;
02306   }
02307 
02308   ::XMLSchema::string<ACE_TCHAR>& domainparticipantQos::
02309   base_name ()
02310   {
02311     return *base_name_;
02312   }
02313 
02314   void domainparticipantQos::
02315   base_name (::XMLSchema::string<ACE_TCHAR> const& e)
02316   {
02317     if (base_name_.get ())
02318     {
02319       *base_name_ = e;
02320     }
02321 
02322     else
02323     {
02324       base_name_ = domainparticipantQos::base_name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
02325       base_name_->container (this);
02326     }
02327   }
02328 
02329 
02330   // publisherQos
02331 
02332   publisherQos::publisherQos ()
02333   : ::XSCRT::Type ()
02334   {
02335   }
02336 
02337   publisherQos::publisherQos (publisherQos const& s) :
02338   ::XSCRT::Type (s)
02339   , presentation_ (s.presentation_.get () ? new ::dds::presentationQosPolicy (*s.presentation_) : 0)
02340   , partition_ (s.partition_.get () ? new ::dds::partitionQosPolicy (*s.partition_) : 0)
02341   , group_data_ (s.group_data_.get () ? new ::dds::groupDataQosPolicy (*s.group_data_) : 0)
02342   , entity_factory_ (s.entity_factory_.get () ? new ::dds::entityFactoryQosPolicy (*s.entity_factory_) : 0)
02343   , name_ (s.name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.name_) : 0)
02344   , base_name_ (s.base_name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.base_name_) : 0)
02345   {
02346     if (presentation_.get ()) presentation_->container (this);
02347     if (partition_.get ()) partition_->container (this);
02348     if (group_data_.get ()) group_data_->container (this);
02349     if (entity_factory_.get ()) entity_factory_->container (this);
02350     if (name_.get ()) name_->container (this);
02351     if (base_name_.get ()) base_name_->container (this);
02352   }
02353 
02354   publisherQos&
02355   publisherQos::operator= (publisherQos const& s)
02356   {
02357     if (&s != this)
02358     {
02359       if (s.presentation_.get ())
02360         presentation (*(s.presentation_));
02361       else
02362         presentation_.reset (0);
02363 
02364       if (s.partition_.get ())
02365         partition (*(s.partition_));
02366       else
02367         partition_.reset (0);
02368 
02369       if (s.group_data_.get ())
02370         group_data (*(s.group_data_));
02371       else
02372         group_data_.reset (0);
02373 
02374       if (s.entity_factory_.get ())
02375         entity_factory (*(s.entity_factory_));
02376       else
02377         entity_factory_.reset (0);
02378 
02379       if (s.name_.get ()) name (*(s.name_));
02380       else name_.reset (0);
02381 
02382       if (s.base_name_.get ()) base_name (*(s.base_name_));
02383       else base_name_.reset (0);
02384     }
02385 
02386     return *this;
02387   }
02388 
02389 
02390   // publisherQos
02391   bool publisherQos::
02392   presentation_p () const
02393   {
02394     return presentation_.get () != 0;
02395   }
02396 
02397   ::dds::presentationQosPolicy const& publisherQos::
02398   presentation () const
02399   {
02400     return *presentation_;
02401   }
02402 
02403   void publisherQos::
02404   presentation (::dds::presentationQosPolicy const& e)
02405   {
02406     if (presentation_.get ())
02407     {
02408       *presentation_ = e;
02409     }
02410 
02411     else
02412     {
02413       presentation_ = publisherQos::presentation_auto_ptr_type (new ::dds::presentationQosPolicy (e));
02414       presentation_->container (this);
02415     }
02416   }
02417 
02418   // publisherQos
02419   bool publisherQos::
02420   partition_p () const
02421   {
02422     return partition_.get () != 0;
02423   }
02424 
02425   ::dds::partitionQosPolicy const& publisherQos::
02426   partition () const
02427   {
02428     return *partition_;
02429   }
02430 
02431   void publisherQos::
02432   partition (::dds::partitionQosPolicy const& e)
02433   {
02434     if (partition_.get ())
02435     {
02436       *partition_ = e;
02437     }
02438 
02439     else
02440     {
02441       partition_ = publisherQos::partition_auto_ptr_type (new ::dds::partitionQosPolicy (e));
02442       partition_->container (this);
02443     }
02444   }
02445 
02446   // publisherQos
02447   bool publisherQos::
02448   group_data_p () const
02449   {
02450     return group_data_.get () != 0;
02451   }
02452 
02453   ::dds::groupDataQosPolicy const& publisherQos::
02454   group_data () const
02455   {
02456     return *group_data_;
02457   }
02458 
02459   void publisherQos::
02460   group_data (::dds::groupDataQosPolicy const& e)
02461   {
02462     if (group_data_.get ())
02463     {
02464       *group_data_ = e;
02465     }
02466 
02467     else
02468     {
02469       group_data_ = publisherQos::group_data_auto_ptr_type (new ::dds::groupDataQosPolicy (e));
02470       group_data_->container (this);
02471     }
02472   }
02473 
02474   // publisherQos
02475   bool publisherQos::
02476   entity_factory_p () const
02477   {
02478     return entity_factory_.get () != 0;
02479   }
02480 
02481   ::dds::entityFactoryQosPolicy const& publisherQos::
02482   entity_factory () const
02483   {
02484     return *entity_factory_;
02485   }
02486 
02487   void publisherQos::
02488   entity_factory (::dds::entityFactoryQosPolicy const& e)
02489   {
02490     if (entity_factory_.get ())
02491     {
02492       *entity_factory_ = e;
02493     }
02494 
02495     else
02496     {
02497       entity_factory_ = publisherQos::entity_factory_auto_ptr_type (new ::dds::entityFactoryQosPolicy (e));
02498       entity_factory_->container (this);
02499     }
02500   }
02501 
02502   // publisherQos
02503   bool publisherQos::
02504   name_p () const
02505   {
02506     return name_.get () != 0;
02507   }
02508 
02509   ::XMLSchema::string<ACE_TCHAR> const& publisherQos::
02510   name () const
02511   {
02512     return *name_;
02513   }
02514 
02515   ::XMLSchema::string<ACE_TCHAR>& publisherQos::
02516   name ()
02517   {
02518     return *name_;
02519   }
02520 
02521   void publisherQos::
02522   name (::XMLSchema::string<ACE_TCHAR> const& e)
02523   {
02524     if (name_.get ())
02525     {
02526       *name_ = e;
02527     }
02528 
02529     else
02530     {
02531       name_ = publisherQos::name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
02532       name_->container (this);
02533     }
02534   }
02535 
02536   // publisherQos
02537   bool publisherQos::
02538   base_name_p () const
02539   {
02540     return base_name_.get () != 0;
02541   }
02542 
02543   ::XMLSchema::string<ACE_TCHAR> const& publisherQos::
02544   base_name () const
02545   {
02546     return *base_name_;
02547   }
02548 
02549   ::XMLSchema::string<ACE_TCHAR>& publisherQos::
02550   base_name ()
02551   {
02552     return *base_name_;
02553   }
02554 
02555   void publisherQos::
02556   base_name (::XMLSchema::string<ACE_TCHAR> const& e)
02557   {
02558     if (base_name_.get ())
02559     {
02560       *base_name_ = e;
02561     }
02562 
02563     else
02564     {
02565       base_name_ = publisherQos::base_name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
02566       base_name_->container (this);
02567     }
02568   }
02569 
02570 
02571   // subscriberQos
02572 
02573   subscriberQos::subscriberQos ()
02574   : ::XSCRT::Type ()
02575   {
02576   }
02577 
02578   subscriberQos::subscriberQos (subscriberQos const& s) :
02579   ::XSCRT::Type (s)
02580   , presentation_ (s.presentation_.get () ? new ::dds::presentationQosPolicy (*s.presentation_) : 0)
02581   , partition_ (s.partition_.get () ? new ::dds::partitionQosPolicy (*s.partition_) : 0)
02582   , group_data_ (s.group_data_.get () ? new ::dds::groupDataQosPolicy (*s.group_data_) : 0)
02583   , entity_factory_ (s.entity_factory_.get () ? new ::dds::entityFactoryQosPolicy (*s.entity_factory_) : 0)
02584   , name_ (s.name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.name_) : 0)
02585   , base_name_ (s.base_name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.base_name_) : 0)
02586   {
02587     if (presentation_.get ()) presentation_->container (this);
02588     if (partition_.get ()) partition_->container (this);
02589     if (group_data_.get ()) group_data_->container (this);
02590     if (entity_factory_.get ()) entity_factory_->container (this);
02591     if (name_.get ()) name_->container (this);
02592     if (base_name_.get ()) base_name_->container (this);
02593   }
02594 
02595   subscriberQos&
02596   subscriberQos::operator= (subscriberQos const& s)
02597   {
02598     if (&s != this)
02599     {
02600       if (s.presentation_.get ())
02601         presentation (*(s.presentation_));
02602       else
02603         presentation_.reset (0);
02604 
02605       if (s.partition_.get ())
02606         partition (*(s.partition_));
02607       else
02608         partition_.reset (0);
02609 
02610       if (s.group_data_.get ())
02611         group_data (*(s.group_data_));
02612       else
02613         group_data_.reset (0);
02614 
02615       if (s.entity_factory_.get ())
02616         entity_factory (*(s.entity_factory_));
02617       else
02618         entity_factory_.reset (0);
02619 
02620       if (s.name_.get ()) name (*(s.name_));
02621       else name_.reset (0);
02622 
02623       if (s.base_name_.get ()) base_name (*(s.base_name_));
02624       else base_name_.reset (0);
02625     }
02626 
02627     return *this;
02628   }
02629 
02630 
02631   // subscriberQos
02632   bool subscriberQos::
02633   presentation_p () const
02634   {
02635     return presentation_.get () != 0;
02636   }
02637 
02638   ::dds::presentationQosPolicy const& subscriberQos::
02639   presentation () const
02640   {
02641     return *presentation_;
02642   }
02643 
02644   void subscriberQos::
02645   presentation (::dds::presentationQosPolicy const& e)
02646   {
02647     if (presentation_.get ())
02648     {
02649       *presentation_ = e;
02650     }
02651 
02652     else
02653     {
02654       presentation_ = subscriberQos::presentation_auto_ptr_type (new ::dds::presentationQosPolicy (e));
02655       presentation_->container (this);
02656     }
02657   }
02658 
02659   // subscriberQos
02660   bool subscriberQos::
02661   partition_p () const
02662   {
02663     return partition_.get () != 0;
02664   }
02665 
02666   ::dds::partitionQosPolicy const& subscriberQos::
02667   partition () const
02668   {
02669     return *partition_;
02670   }
02671 
02672   void subscriberQos::
02673   partition (::dds::partitionQosPolicy const& e)
02674   {
02675     if (partition_.get ())
02676     {
02677       *partition_ = e;
02678     }
02679 
02680     else
02681     {
02682       partition_ = subscriberQos::partition_auto_ptr_type (new ::dds::partitionQosPolicy (e));
02683       partition_->container (this);
02684     }
02685   }
02686 
02687   // subscriberQos
02688   bool subscriberQos::
02689   group_data_p () const
02690   {
02691     return group_data_.get () != 0;
02692   }
02693 
02694   ::dds::groupDataQosPolicy const& subscriberQos::
02695   group_data () const
02696   {
02697     return *group_data_;
02698   }
02699 
02700   void subscriberQos::
02701   group_data (::dds::groupDataQosPolicy const& e)
02702   {
02703     if (group_data_.get ())
02704     {
02705       *group_data_ = e;
02706     }
02707 
02708     else
02709     {
02710       group_data_ = subscriberQos::group_data_auto_ptr_type (new ::dds::groupDataQosPolicy (e));
02711       group_data_->container (this);
02712     }
02713   }
02714 
02715   // subscriberQos
02716   bool subscriberQos::
02717   entity_factory_p () const
02718   {
02719     return entity_factory_.get () != 0;
02720   }
02721 
02722   ::dds::entityFactoryQosPolicy const& subscriberQos::
02723   entity_factory () const
02724   {
02725     return *entity_factory_;
02726   }
02727 
02728   void subscriberQos::
02729   entity_factory (::dds::entityFactoryQosPolicy const& e)
02730   {
02731     if (entity_factory_.get ())
02732     {
02733       *entity_factory_ = e;
02734     }
02735 
02736     else
02737     {
02738       entity_factory_ = subscriberQos::entity_factory_auto_ptr_type (new ::dds::entityFactoryQosPolicy (e));
02739       entity_factory_->container (this);
02740     }
02741   }
02742 
02743   // subscriberQos
02744   bool subscriberQos::
02745   name_p () const
02746   {
02747     return name_.get () != 0;
02748   }
02749 
02750   ::XMLSchema::string<ACE_TCHAR> const& subscriberQos::
02751   name () const
02752   {
02753     return *name_;
02754   }
02755 
02756   ::XMLSchema::string<ACE_TCHAR>& subscriberQos::
02757   name ()
02758   {
02759     return *name_;
02760   }
02761 
02762   void subscriberQos::
02763   name (::XMLSchema::string<ACE_TCHAR> const& e)
02764   {
02765     if (name_.get ())
02766     {
02767       *name_ = e;
02768     }
02769 
02770     else
02771     {
02772       name_ = subscriberQos::name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
02773       name_->container (this);
02774     }
02775   }
02776 
02777   // subscriberQos
02778   bool subscriberQos::
02779   base_name_p () const
02780   {
02781     return base_name_.get () != 0;
02782   }
02783 
02784   ::XMLSchema::string<ACE_TCHAR> const& subscriberQos::
02785   base_name () const
02786   {
02787     return *base_name_;
02788   }
02789 
02790   ::XMLSchema::string<ACE_TCHAR>& subscriberQos::
02791   base_name ()
02792   {
02793     return *base_name_;
02794   }
02795 
02796   void subscriberQos::
02797   base_name (::XMLSchema::string<ACE_TCHAR> const& e)
02798   {
02799     if (base_name_.get ())
02800     {
02801       *base_name_ = e;
02802     }
02803 
02804     else
02805     {
02806       base_name_ = subscriberQos::base_name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
02807       base_name_->container (this);
02808     }
02809   }
02810 
02811 
02812   // topicQos
02813 
02814   topicQos::topicQos ()
02815   : ::XSCRT::Type ()
02816   {
02817   }
02818 
02819   topicQos::topicQos (topicQos const& s) :
02820   ::XSCRT::Type (s)
02821   , topic_data_ (s.topic_data_.get () ? new ::dds::topicDataQosPolicy (*s.topic_data_) : 0)
02822   , durability_ (s.durability_.get () ? new ::dds::durabilityQosPolicy (*s.durability_) : 0)
02823   , durability_service_ (s.durability_service_.get () ? new ::dds::durabilityServiceQosPolicy (*s.durability_service_) : 0)
02824   , deadline_ (s.deadline_.get () ? new ::dds::deadlineQosPolicy (*s.deadline_) : 0)
02825   , latency_budget_ (s.latency_budget_.get () ? new ::dds::latencyBudgetQosPolicy (*s.latency_budget_) : 0)
02826   , liveliness_ (s.liveliness_.get () ? new ::dds::livelinessQosPolicy (*s.liveliness_) : 0)
02827   , reliability_ (s.reliability_.get () ? new ::dds::reliabilityQosPolicy (*s.reliability_) : 0)
02828   , destination_order_ (s.destination_order_.get () ? new ::dds::destinationOrderQosPolicy (*s.destination_order_) : 0)
02829   , history_ (s.history_.get () ? new ::dds::historyQosPolicy (*s.history_) : 0)
02830   , resource_limits_ (s.resource_limits_.get () ? new ::dds::resourceLimitsQosPolicy (*s.resource_limits_) : 0)
02831   , transport_priority_ (s.transport_priority_.get () ? new ::dds::transportPriorityQosPolicy (*s.transport_priority_) : 0)
02832   , lifespan_ (s.lifespan_.get () ? new ::dds::lifespanQosPolicy (*s.lifespan_) : 0)
02833   , ownership_ (s.ownership_.get () ? new ::dds::ownershipQosPolicy (*s.ownership_) : 0)
02834   , name_ (s.name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.name_) : 0)
02835   , base_name_ (s.base_name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.base_name_) : 0)
02836   , topic_filter_ (s.topic_filter_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.topic_filter_) : 0)
02837   {
02838     if (topic_data_.get ()) topic_data_->container (this);
02839     if (durability_.get ()) durability_->container (this);
02840     if (durability_service_.get ()) durability_service_->container (this);
02841     if (deadline_.get ()) deadline_->container (this);
02842     if (latency_budget_.get ()) latency_budget_->container (this);
02843     if (liveliness_.get ()) liveliness_->container (this);
02844     if (reliability_.get ()) reliability_->container (this);
02845     if (destination_order_.get ()) destination_order_->container (this);
02846     if (history_.get ()) history_->container (this);
02847     if (resource_limits_.get ()) resource_limits_->container (this);
02848     if (transport_priority_.get ()) transport_priority_->container (this);
02849     if (lifespan_.get ()) lifespan_->container (this);
02850     if (ownership_.get ()) ownership_->container (this);
02851     if (name_.get ()) name_->container (this);
02852     if (base_name_.get ()) base_name_->container (this);
02853     if (topic_filter_.get ()) topic_filter_->container (this);
02854   }
02855 
02856   topicQos&
02857   topicQos::operator= (topicQos const& s)
02858   {
02859     if (&s != this)
02860     {
02861       if (s.topic_data_.get ())
02862         topic_data (*(s.topic_data_));
02863       else
02864         topic_data_.reset (0);
02865 
02866       if (s.durability_.get ())
02867         durability (*(s.durability_));
02868       else
02869         durability_.reset (0);
02870 
02871       if (s.durability_service_.get ())
02872         durability_service (*(s.durability_service_));
02873       else
02874         durability_service_.reset (0);
02875 
02876       if (s.deadline_.get ())
02877         deadline (*(s.deadline_));
02878       else
02879         deadline_.reset (0);
02880 
02881       if (s.latency_budget_.get ())
02882         latency_budget (*(s.latency_budget_));
02883       else
02884         latency_budget_.reset (0);
02885 
02886       if (s.liveliness_.get ())
02887         liveliness (*(s.liveliness_));
02888       else
02889         liveliness_.reset (0);
02890 
02891       if (s.reliability_.get ())
02892         reliability (*(s.reliability_));
02893       else
02894         reliability_.reset (0);
02895 
02896       if (s.destination_order_.get ())
02897         destination_order (*(s.destination_order_));
02898       else
02899         destination_order_.reset (0);
02900 
02901       if (s.history_.get ())
02902         history (*(s.history_));
02903       else
02904         history_.reset (0);
02905 
02906       if (s.resource_limits_.get ())
02907         resource_limits (*(s.resource_limits_));
02908       else
02909         resource_limits_.reset (0);
02910 
02911       if (s.transport_priority_.get ())
02912         transport_priority (*(s.transport_priority_));
02913       else
02914         transport_priority_.reset (0);
02915 
02916       if (s.lifespan_.get ())
02917         lifespan (*(s.lifespan_));
02918       else
02919         lifespan_.reset (0);
02920 
02921       if (s.ownership_.get ())
02922         ownership (*(s.ownership_));
02923       else
02924         ownership_.reset (0);
02925 
02926       if (s.name_.get ()) name (*(s.name_));
02927       else name_.reset (0);
02928 
02929       if (s.base_name_.get ()) base_name (*(s.base_name_));
02930       else base_name_.reset (0);
02931 
02932       if (s.topic_filter_.get ()) topic_filter (*(s.topic_filter_));
02933       else topic_filter_.reset (0);
02934     }
02935 
02936     return *this;
02937   }
02938 
02939 
02940   // topicQos
02941   bool topicQos::
02942   topic_data_p () const
02943   {
02944     return topic_data_.get () != 0;
02945   }
02946 
02947   ::dds::topicDataQosPolicy const& topicQos::
02948   topic_data () const
02949   {
02950     return *topic_data_;
02951   }
02952 
02953   void topicQos::
02954   topic_data (::dds::topicDataQosPolicy const& e)
02955   {
02956     if (topic_data_.get ())
02957     {
02958       *topic_data_ = e;
02959     }
02960 
02961     else
02962     {
02963       topic_data_ = topicQos::topic_data_auto_ptr_type (new ::dds::topicDataQosPolicy (e));
02964       topic_data_->container (this);
02965     }
02966   }
02967 
02968   // topicQos
02969   bool topicQos::
02970   durability_p () const
02971   {
02972     return durability_.get () != 0;
02973   }
02974 
02975   ::dds::durabilityQosPolicy const& topicQos::
02976   durability () const
02977   {
02978     return *durability_;
02979   }
02980 
02981   void topicQos::
02982   durability (::dds::durabilityQosPolicy const& e)
02983   {
02984     if (durability_.get ())
02985     {
02986       *durability_ = e;
02987     }
02988 
02989     else
02990     {
02991       durability_ = topicQos::durability_auto_ptr_type (new ::dds::durabilityQosPolicy (e));
02992       durability_->container (this);
02993     }
02994   }
02995 
02996   // topicQos
02997   bool topicQos::
02998   durability_service_p () const
02999   {
03000     return durability_service_.get () != 0;
03001   }
03002 
03003   ::dds::durabilityServiceQosPolicy const& topicQos::
03004   durability_service () const
03005   {
03006     return *durability_service_;
03007   }
03008 
03009   void topicQos::
03010   durability_service (::dds::durabilityServiceQosPolicy const& e)
03011   {
03012     if (durability_service_.get ())
03013     {
03014       *durability_service_ = e;
03015     }
03016 
03017     else
03018     {
03019       durability_service_ = topicQos::durability_service_auto_ptr_type (new ::dds::durabilityServiceQosPolicy (e));
03020       durability_service_->container (this);
03021     }
03022   }
03023 
03024   // topicQos
03025   bool topicQos::
03026   deadline_p () const
03027   {
03028     return deadline_.get () != 0;
03029   }
03030 
03031   ::dds::deadlineQosPolicy const& topicQos::
03032   deadline () const
03033   {
03034     return *deadline_;
03035   }
03036 
03037   void topicQos::
03038   deadline (::dds::deadlineQosPolicy const& e)
03039   {
03040     if (deadline_.get ())
03041     {
03042       *deadline_ = e;
03043     }
03044 
03045     else
03046     {
03047       deadline_ = topicQos::deadline_auto_ptr_type (new ::dds::deadlineQosPolicy (e));
03048       deadline_->container (this);
03049     }
03050   }
03051 
03052   // topicQos
03053   bool topicQos::
03054   latency_budget_p () const
03055   {
03056     return latency_budget_.get () != 0;
03057   }
03058 
03059   ::dds::latencyBudgetQosPolicy const& topicQos::
03060   latency_budget () const
03061   {
03062     return *latency_budget_;
03063   }
03064 
03065   void topicQos::
03066   latency_budget (::dds::latencyBudgetQosPolicy const& e)
03067   {
03068     if (latency_budget_.get ())
03069     {
03070       *latency_budget_ = e;
03071     }
03072 
03073     else
03074     {
03075       latency_budget_ = topicQos::latency_budget_auto_ptr_type (new ::dds::latencyBudgetQosPolicy (e));
03076       latency_budget_->container (this);
03077     }
03078   }
03079 
03080   // topicQos
03081   bool topicQos::
03082   liveliness_p () const
03083   {
03084     return liveliness_.get () != 0;
03085   }
03086 
03087   ::dds::livelinessQosPolicy const& topicQos::
03088   liveliness () const
03089   {
03090     return *liveliness_;
03091   }
03092 
03093   void topicQos::
03094   liveliness (::dds::livelinessQosPolicy const& e)
03095   {
03096     if (liveliness_.get ())
03097     {
03098       *liveliness_ = e;
03099     }
03100 
03101     else
03102     {
03103       liveliness_ = topicQos::liveliness_auto_ptr_type (new ::dds::livelinessQosPolicy (e));
03104       liveliness_->container (this);
03105     }
03106   }
03107 
03108   // topicQos
03109   bool topicQos::
03110   reliability_p () const
03111   {
03112     return reliability_.get () != 0;
03113   }
03114 
03115   ::dds::reliabilityQosPolicy const& topicQos::
03116   reliability () const
03117   {
03118     return *reliability_;
03119   }
03120 
03121   void topicQos::
03122   reliability (::dds::reliabilityQosPolicy const& e)
03123   {
03124     if (reliability_.get ())
03125     {
03126       *reliability_ = e;
03127     }
03128 
03129     else
03130     {
03131       reliability_ = topicQos::reliability_auto_ptr_type (new ::dds::reliabilityQosPolicy (e));
03132       reliability_->container (this);
03133     }
03134   }
03135 
03136   // topicQos
03137   bool topicQos::
03138   destination_order_p () const
03139   {
03140     return destination_order_.get () != 0;
03141   }
03142 
03143   ::dds::destinationOrderQosPolicy const& topicQos::
03144   destination_order () const
03145   {
03146     return *destination_order_;
03147   }
03148 
03149   void topicQos::
03150   destination_order (::dds::destinationOrderQosPolicy const& e)
03151   {
03152     if (destination_order_.get ())
03153     {
03154       *destination_order_ = e;
03155     }
03156 
03157     else
03158     {
03159       destination_order_ = topicQos::destination_order_auto_ptr_type (new ::dds::destinationOrderQosPolicy (e));
03160       destination_order_->container (this);
03161     }
03162   }
03163 
03164   // topicQos
03165   bool topicQos::
03166   history_p () const
03167   {
03168     return history_.get () != 0;
03169   }
03170 
03171   ::dds::historyQosPolicy const& topicQos::
03172   history () const
03173   {
03174     return *history_;
03175   }
03176 
03177   void topicQos::
03178   history (::dds::historyQosPolicy const& e)
03179   {
03180     if (history_.get ())
03181     {
03182       *history_ = e;
03183     }
03184 
03185     else
03186     {
03187       history_ = topicQos::history_auto_ptr_type (new ::dds::historyQosPolicy (e));
03188       history_->container (this);
03189     }
03190   }
03191 
03192   // topicQos
03193   bool topicQos::
03194   resource_limits_p () const
03195   {
03196     return resource_limits_.get () != 0;
03197   }
03198 
03199   ::dds::resourceLimitsQosPolicy const& topicQos::
03200   resource_limits () const
03201   {
03202     return *resource_limits_;
03203   }
03204 
03205   void topicQos::
03206   resource_limits (::dds::resourceLimitsQosPolicy const& e)
03207   {
03208     if (resource_limits_.get ())
03209     {
03210       *resource_limits_ = e;
03211     }
03212 
03213     else
03214     {
03215       resource_limits_ = topicQos::resource_limits_auto_ptr_type (new ::dds::resourceLimitsQosPolicy (e));
03216       resource_limits_->container (this);
03217     }
03218   }
03219 
03220   // topicQos
03221   bool topicQos::
03222   transport_priority_p () const
03223   {
03224     return transport_priority_.get () != 0;
03225   }
03226 
03227   ::dds::transportPriorityQosPolicy const& topicQos::
03228   transport_priority () const
03229   {
03230     return *transport_priority_;
03231   }
03232 
03233   void topicQos::
03234   transport_priority (::dds::transportPriorityQosPolicy const& e)
03235   {
03236     if (transport_priority_.get ())
03237     {
03238       *transport_priority_ = e;
03239     }
03240 
03241     else
03242     {
03243       transport_priority_ = topicQos::transport_priority_auto_ptr_type (new ::dds::transportPriorityQosPolicy (e));
03244       transport_priority_->container (this);
03245     }
03246   }
03247 
03248   // topicQos
03249   bool topicQos::
03250   lifespan_p () const
03251   {
03252     return lifespan_.get () != 0;
03253   }
03254 
03255   ::dds::lifespanQosPolicy const& topicQos::
03256   lifespan () const
03257   {
03258     return *lifespan_;
03259   }
03260 
03261   void topicQos::
03262   lifespan (::dds::lifespanQosPolicy const& e)
03263   {
03264     if (lifespan_.get ())
03265     {
03266       *lifespan_ = e;
03267     }
03268 
03269     else
03270     {
03271       lifespan_ = topicQos::lifespan_auto_ptr_type (new ::dds::lifespanQosPolicy (e));
03272       lifespan_->container (this);
03273     }
03274   }
03275 
03276   // topicQos
03277   bool topicQos::
03278   ownership_p () const
03279   {
03280     return ownership_.get () != 0;
03281   }
03282 
03283   ::dds::ownershipQosPolicy const& topicQos::
03284   ownership () const
03285   {
03286     return *ownership_;
03287   }
03288 
03289   void topicQos::
03290   ownership (::dds::ownershipQosPolicy const& e)
03291   {
03292     if (ownership_.get ())
03293     {
03294       *ownership_ = e;
03295     }
03296 
03297     else
03298     {
03299       ownership_ = topicQos::ownership_auto_ptr_type (new ::dds::ownershipQosPolicy (e));
03300       ownership_->container (this);
03301     }
03302   }
03303 
03304   // topicQos
03305   bool topicQos::
03306   name_p () const
03307   {
03308     return name_.get () != 0;
03309   }
03310 
03311   ::XMLSchema::string<ACE_TCHAR> const& topicQos::
03312   name () const
03313   {
03314     return *name_;
03315   }
03316 
03317   ::XMLSchema::string<ACE_TCHAR>& topicQos::
03318   name ()
03319   {
03320     return *name_;
03321   }
03322 
03323   void topicQos::
03324   name (::XMLSchema::string<ACE_TCHAR> const& e)
03325   {
03326     if (name_.get ())
03327     {
03328       *name_ = e;
03329     }
03330 
03331     else
03332     {
03333       name_ = topicQos::name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
03334       name_->container (this);
03335     }
03336   }
03337 
03338   // topicQos
03339   bool topicQos::
03340   base_name_p () const
03341   {
03342     return base_name_.get () != 0;
03343   }
03344 
03345   ::XMLSchema::string<ACE_TCHAR> const& topicQos::
03346   base_name () const
03347   {
03348     return *base_name_;
03349   }
03350 
03351   ::XMLSchema::string<ACE_TCHAR>& topicQos::
03352   base_name ()
03353   {
03354     return *base_name_;
03355   }
03356 
03357   void topicQos::
03358   base_name (::XMLSchema::string<ACE_TCHAR> const& e)
03359   {
03360     if (base_name_.get ())
03361     {
03362       *base_name_ = e;
03363     }
03364 
03365     else
03366     {
03367       base_name_ = topicQos::base_name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
03368       base_name_->container (this);
03369     }
03370   }
03371 
03372   // topicQos
03373   bool topicQos::
03374   topic_filter_p () const
03375   {
03376     return topic_filter_.get () != 0;
03377   }
03378 
03379   ::XMLSchema::string<ACE_TCHAR> const& topicQos::
03380   topic_filter () const
03381   {
03382     return *topic_filter_;
03383   }
03384 
03385   ::XMLSchema::string<ACE_TCHAR>& topicQos::
03386   topic_filter ()
03387   {
03388     return *topic_filter_;
03389   }
03390 
03391   void topicQos::
03392   topic_filter (::XMLSchema::string<ACE_TCHAR> const& e)
03393   {
03394     if (topic_filter_.get ())
03395     {
03396       *topic_filter_ = e;
03397     }
03398 
03399     else
03400     {
03401       topic_filter_ = topicQos::topic_filter_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
03402       topic_filter_->container (this);
03403     }
03404   }
03405 
03406 
03407   // datareaderQos
03408 
03409   datareaderQos::datareaderQos ()
03410   : ::XSCRT::Type ()
03411   {
03412   }
03413 
03414   datareaderQos::datareaderQos (datareaderQos const& s) :
03415   ::XSCRT::Type (s)
03416   , durability_ (s.durability_.get () ? new ::dds::durabilityQosPolicy (*s.durability_) : 0)
03417   , deadline_ (s.deadline_.get () ? new ::dds::deadlineQosPolicy (*s.deadline_) : 0)
03418   , latency_budget_ (s.latency_budget_.get () ? new ::dds::latencyBudgetQosPolicy (*s.latency_budget_) : 0)
03419   , liveliness_ (s.liveliness_.get () ? new ::dds::livelinessQosPolicy (*s.liveliness_) : 0)
03420   , reliability_ (s.reliability_.get () ? new ::dds::reliabilityQosPolicy (*s.reliability_) : 0)
03421   , destination_order_ (s.destination_order_.get () ? new ::dds::destinationOrderQosPolicy (*s.destination_order_) : 0)
03422   , history_ (s.history_.get () ? new ::dds::historyQosPolicy (*s.history_) : 0)
03423   , resource_limits_ (s.resource_limits_.get () ? new ::dds::resourceLimitsQosPolicy (*s.resource_limits_) : 0)
03424   , user_data_ (s.user_data_.get () ? new ::dds::userDataQosPolicy (*s.user_data_) : 0)
03425   , ownership_ (s.ownership_.get () ? new ::dds::ownershipQosPolicy (*s.ownership_) : 0)
03426   , time_based_filter_ (s.time_based_filter_.get () ? new ::dds::timeBasedFilterQosPolicy (*s.time_based_filter_) : 0)
03427   , reader_data_lifecycle_ (s.reader_data_lifecycle_.get () ? new ::dds::readerDataLifecycleQosPolicy (*s.reader_data_lifecycle_) : 0)
03428   , name_ (s.name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.name_) : 0)
03429   , base_name_ (s.base_name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.base_name_) : 0)
03430   , topic_filter_ (s.topic_filter_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.topic_filter_) : 0)
03431   {
03432     if (durability_.get ()) durability_->container (this);
03433     if (deadline_.get ()) deadline_->container (this);
03434     if (latency_budget_.get ()) latency_budget_->container (this);
03435     if (liveliness_.get ()) liveliness_->container (this);
03436     if (reliability_.get ()) reliability_->container (this);
03437     if (destination_order_.get ()) destination_order_->container (this);
03438     if (history_.get ()) history_->container (this);
03439     if (resource_limits_.get ()) resource_limits_->container (this);
03440     if (user_data_.get ()) user_data_->container (this);
03441     if (ownership_.get ()) ownership_->container (this);
03442     if (time_based_filter_.get ()) time_based_filter_->container (this);
03443     if (reader_data_lifecycle_.get ()) reader_data_lifecycle_->container (this);
03444     if (name_.get ()) name_->container (this);
03445     if (base_name_.get ()) base_name_->container (this);
03446     if (topic_filter_.get ()) topic_filter_->container (this);
03447   }
03448 
03449   datareaderQos&
03450   datareaderQos::operator= (datareaderQos const& s)
03451   {
03452     if (&s != this)
03453     {
03454       if (s.durability_.get ())
03455         durability (*(s.durability_));
03456       else
03457         durability_.reset (0);
03458 
03459       if (s.deadline_.get ())
03460         deadline (*(s.deadline_));
03461       else
03462         deadline_.reset (0);
03463 
03464       if (s.latency_budget_.get ())
03465         latency_budget (*(s.latency_budget_));
03466       else
03467         latency_budget_.reset (0);
03468 
03469       if (s.liveliness_.get ())
03470         liveliness (*(s.liveliness_));
03471       else
03472         liveliness_.reset (0);
03473 
03474       if (s.reliability_.get ())
03475         reliability (*(s.reliability_));
03476       else
03477         reliability_.reset (0);
03478 
03479       if (s.destination_order_.get ())
03480         destination_order (*(s.destination_order_));
03481       else
03482         destination_order_.reset (0);
03483 
03484       if (s.history_.get ())
03485         history (*(s.history_));
03486       else
03487         history_.reset (0);
03488 
03489       if (s.resource_limits_.get ())
03490         resource_limits (*(s.resource_limits_));
03491       else
03492         resource_limits_.reset (0);
03493 
03494       if (s.user_data_.get ())
03495         user_data (*(s.user_data_));
03496       else
03497         user_data_.reset (0);
03498 
03499       if (s.ownership_.get ())
03500         ownership (*(s.ownership_));
03501       else
03502         ownership_.reset (0);
03503 
03504       if (s.time_based_filter_.get ())
03505         time_based_filter (*(s.time_based_filter_));
03506       else
03507         time_based_filter_.reset (0);
03508 
03509       if (s.reader_data_lifecycle_.get ())
03510         reader_data_lifecycle (*(s.reader_data_lifecycle_));
03511       else
03512         reader_data_lifecycle_.reset (0);
03513 
03514       if (s.name_.get ()) name (*(s.name_));
03515       else name_.reset (0);
03516 
03517       if (s.base_name_.get ()) base_name (*(s.base_name_));
03518       else base_name_.reset (0);
03519 
03520       if (s.topic_filter_.get ()) topic_filter (*(s.topic_filter_));
03521       else topic_filter_.reset (0);
03522     }
03523 
03524     return *this;
03525   }
03526 
03527 
03528   // datareaderQos
03529   bool datareaderQos::
03530   durability_p () const
03531   {
03532     return durability_.get () != 0;
03533   }
03534 
03535   ::dds::durabilityQosPolicy const& datareaderQos::
03536   durability () const
03537   {
03538     return *durability_;
03539   }
03540 
03541   void datareaderQos::
03542   durability (::dds::durabilityQosPolicy const& e)
03543   {
03544     if (durability_.get ())
03545     {
03546       *durability_ = e;
03547     }
03548 
03549     else
03550     {
03551       durability_ = datareaderQos::durability_auto_ptr_type (new ::dds::durabilityQosPolicy (e));
03552       durability_->container (this);
03553     }
03554   }
03555 
03556   // datareaderQos
03557   bool datareaderQos::
03558   deadline_p () const
03559   {
03560     return deadline_.get () != 0;
03561   }
03562 
03563   ::dds::deadlineQosPolicy const& datareaderQos::
03564   deadline () const
03565   {
03566     return *deadline_;
03567   }
03568 
03569   void datareaderQos::
03570   deadline (::dds::deadlineQosPolicy const& e)
03571   {
03572     if (deadline_.get ())
03573     {
03574       *deadline_ = e;
03575     }
03576 
03577     else
03578     {
03579       deadline_ = datareaderQos::deadline_auto_ptr_type (new ::dds::deadlineQosPolicy (e));
03580       deadline_->container (this);
03581     }
03582   }
03583 
03584   // datareaderQos
03585   bool datareaderQos::
03586   latency_budget_p () const
03587   {
03588     return latency_budget_.get () != 0;
03589   }
03590 
03591   ::dds::latencyBudgetQosPolicy const& datareaderQos::
03592   latency_budget () const
03593   {
03594     return *latency_budget_;
03595   }
03596 
03597   void datareaderQos::
03598   latency_budget (::dds::latencyBudgetQosPolicy const& e)
03599   {
03600     if (latency_budget_.get ())
03601     {
03602       *latency_budget_ = e;
03603     }
03604 
03605     else
03606     {
03607       latency_budget_ = datareaderQos::latency_budget_auto_ptr_type (new ::dds::latencyBudgetQosPolicy (e));
03608       latency_budget_->container (this);
03609     }
03610   }
03611 
03612   // datareaderQos
03613   bool datareaderQos::
03614   liveliness_p () const
03615   {
03616     return liveliness_.get () != 0;
03617   }
03618 
03619   ::dds::livelinessQosPolicy const& datareaderQos::
03620   liveliness () const
03621   {
03622     return *liveliness_;
03623   }
03624 
03625   void datareaderQos::
03626   liveliness (::dds::livelinessQosPolicy const& e)
03627   {
03628     if (liveliness_.get ())
03629     {
03630       *liveliness_ = e;
03631     }
03632 
03633     else
03634     {
03635       liveliness_ = datareaderQos::liveliness_auto_ptr_type (new ::dds::livelinessQosPolicy (e));
03636       liveliness_->container (this);
03637     }
03638   }
03639 
03640   // datareaderQos
03641   bool datareaderQos::
03642   reliability_p () const
03643   {
03644     return reliability_.get () != 0;
03645   }
03646 
03647   ::dds::reliabilityQosPolicy const& datareaderQos::
03648   reliability () const
03649   {
03650     return *reliability_;
03651   }
03652 
03653   void datareaderQos::
03654   reliability (::dds::reliabilityQosPolicy const& e)
03655   {
03656     if (reliability_.get ())
03657     {
03658       *reliability_ = e;
03659     }
03660 
03661     else
03662     {
03663       reliability_ = datareaderQos::reliability_auto_ptr_type (new ::dds::reliabilityQosPolicy (e));
03664       reliability_->container (this);
03665     }
03666   }
03667 
03668   // datareaderQos
03669   bool datareaderQos::
03670   destination_order_p () const
03671   {
03672     return destination_order_.get () != 0;
03673   }
03674 
03675   ::dds::destinationOrderQosPolicy const& datareaderQos::
03676   destination_order () const
03677   {
03678     return *destination_order_;
03679   }
03680 
03681   void datareaderQos::
03682   destination_order (::dds::destinationOrderQosPolicy const& e)
03683   {
03684     if (destination_order_.get ())
03685     {
03686       *destination_order_ = e;
03687     }
03688 
03689     else
03690     {
03691       destination_order_ = datareaderQos::destination_order_auto_ptr_type (new ::dds::destinationOrderQosPolicy (e));
03692       destination_order_->container (this);
03693     }
03694   }
03695 
03696   // datareaderQos
03697   bool datareaderQos::
03698   history_p () const
03699   {
03700     return history_.get () != 0;
03701   }
03702 
03703   ::dds::historyQosPolicy const& datareaderQos::
03704   history () const
03705   {
03706     return *history_;
03707   }
03708 
03709   void datareaderQos::
03710   history (::dds::historyQosPolicy const& e)
03711   {
03712     if (history_.get ())
03713     {
03714       *history_ = e;
03715     }
03716 
03717     else
03718     {
03719       history_ = datareaderQos::history_auto_ptr_type (new ::dds::historyQosPolicy (e));
03720       history_->container (this);
03721     }
03722   }
03723 
03724   // datareaderQos
03725   bool datareaderQos::
03726   resource_limits_p () const
03727   {
03728     return resource_limits_.get () != 0;
03729   }
03730 
03731   ::dds::resourceLimitsQosPolicy const& datareaderQos::
03732   resource_limits () const
03733   {
03734     return *resource_limits_;
03735   }
03736 
03737   void datareaderQos::
03738   resource_limits (::dds::resourceLimitsQosPolicy const& e)
03739   {
03740     if (resource_limits_.get ())
03741     {
03742       *resource_limits_ = e;
03743     }
03744 
03745     else
03746     {
03747       resource_limits_ = datareaderQos::resource_limits_auto_ptr_type (new ::dds::resourceLimitsQosPolicy (e));
03748       resource_limits_->container (this);
03749     }
03750   }
03751 
03752   // datareaderQos
03753   bool datareaderQos::
03754   user_data_p () const
03755   {
03756     return user_data_.get () != 0;
03757   }
03758 
03759   ::dds::userDataQosPolicy const& datareaderQos::
03760   user_data () const
03761   {
03762     return *user_data_;
03763   }
03764 
03765   void datareaderQos::
03766   user_data (::dds::userDataQosPolicy const& e)
03767   {
03768     if (user_data_.get ())
03769     {
03770       *user_data_ = e;
03771     }
03772 
03773     else
03774     {
03775       user_data_ = datareaderQos::user_data_auto_ptr_type (new ::dds::userDataQosPolicy (e));
03776       user_data_->container (this);
03777     }
03778   }
03779 
03780   // datareaderQos
03781   bool datareaderQos::
03782   ownership_p () const
03783   {
03784     return ownership_.get () != 0;
03785   }
03786 
03787   ::dds::ownershipQosPolicy const& datareaderQos::
03788   ownership () const
03789   {
03790     return *ownership_;
03791   }
03792 
03793   void datareaderQos::
03794   ownership (::dds::ownershipQosPolicy const& e)
03795   {
03796     if (ownership_.get ())
03797     {
03798       *ownership_ = e;
03799     }
03800 
03801     else
03802     {
03803       ownership_ = datareaderQos::ownership_auto_ptr_type (new ::dds::ownershipQosPolicy (e));
03804       ownership_->container (this);
03805     }
03806   }
03807 
03808   // datareaderQos
03809   bool datareaderQos::
03810   time_based_filter_p () const
03811   {
03812     return time_based_filter_.get () != 0;
03813   }
03814 
03815   ::dds::timeBasedFilterQosPolicy const& datareaderQos::
03816   time_based_filter () const
03817   {
03818     return *time_based_filter_;
03819   }
03820 
03821   void datareaderQos::
03822   time_based_filter (::dds::timeBasedFilterQosPolicy const& e)
03823   {
03824     if (time_based_filter_.get ())
03825     {
03826       *time_based_filter_ = e;
03827     }
03828 
03829     else
03830     {
03831       time_based_filter_ = datareaderQos::time_based_filter_auto_ptr_type (new ::dds::timeBasedFilterQosPolicy (e));
03832       time_based_filter_->container (this);
03833     }
03834   }
03835 
03836   // datareaderQos
03837   bool datareaderQos::
03838   reader_data_lifecycle_p () const
03839   {
03840     return reader_data_lifecycle_.get () != 0;
03841   }
03842 
03843   ::dds::readerDataLifecycleQosPolicy const& datareaderQos::
03844   reader_data_lifecycle () const
03845   {
03846     return *reader_data_lifecycle_;
03847   }
03848 
03849   void datareaderQos::
03850   reader_data_lifecycle (::dds::readerDataLifecycleQosPolicy const& e)
03851   {
03852     if (reader_data_lifecycle_.get ())
03853     {
03854       *reader_data_lifecycle_ = e;
03855     }
03856 
03857     else
03858     {
03859       reader_data_lifecycle_ = datareaderQos::reader_data_lifecycle_auto_ptr_type (new ::dds::readerDataLifecycleQosPolicy (e));
03860       reader_data_lifecycle_->container (this);
03861     }
03862   }
03863 
03864   // datareaderQos
03865   bool datareaderQos::
03866   name_p () const
03867   {
03868     return name_.get () != 0;
03869   }
03870 
03871   ::XMLSchema::string<ACE_TCHAR> const& datareaderQos::
03872   name () const
03873   {
03874     return *name_;
03875   }
03876 
03877   ::XMLSchema::string<ACE_TCHAR>& datareaderQos::
03878   name ()
03879   {
03880     return *name_;
03881   }
03882 
03883   void datareaderQos::
03884   name (::XMLSchema::string<ACE_TCHAR> const& e)
03885   {
03886     if (name_.get ())
03887     {
03888       *name_ = e;
03889     }
03890 
03891     else
03892     {
03893       name_ = datareaderQos::name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
03894       name_->container (this);
03895     }
03896   }
03897 
03898   // datareaderQos
03899   bool datareaderQos::
03900   base_name_p () const
03901   {
03902     return base_name_.get () != 0;
03903   }
03904 
03905   ::XMLSchema::string<ACE_TCHAR> const& datareaderQos::
03906   base_name () const
03907   {
03908     return *base_name_;
03909   }
03910 
03911   ::XMLSchema::string<ACE_TCHAR>& datareaderQos::
03912   base_name ()
03913   {
03914     return *base_name_;
03915   }
03916 
03917   void datareaderQos::
03918   base_name (::XMLSchema::string<ACE_TCHAR> const& e)
03919   {
03920     if (base_name_.get ())
03921     {
03922       *base_name_ = e;
03923     }
03924 
03925     else
03926     {
03927       base_name_ = datareaderQos::base_name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
03928       base_name_->container (this);
03929     }
03930   }
03931 
03932   // datareaderQos
03933   bool datareaderQos::
03934   topic_filter_p () const
03935   {
03936     return topic_filter_.get () != 0;
03937   }
03938 
03939   ::XMLSchema::string<ACE_TCHAR> const& datareaderQos::
03940   topic_filter () const
03941   {
03942     return *topic_filter_;
03943   }
03944 
03945   ::XMLSchema::string<ACE_TCHAR>& datareaderQos::
03946   topic_filter ()
03947   {
03948     return *topic_filter_;
03949   }
03950 
03951   void datareaderQos::
03952   topic_filter (::XMLSchema::string<ACE_TCHAR> const& e)
03953   {
03954     if (topic_filter_.get ())
03955     {
03956       *topic_filter_ = e;
03957     }
03958 
03959     else
03960     {
03961       topic_filter_ = datareaderQos::topic_filter_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
03962       topic_filter_->container (this);
03963     }
03964   }
03965 
03966 
03967   // datawriterQos
03968 
03969   datawriterQos::datawriterQos ()
03970   : ::XSCRT::Type ()
03971   {
03972   }
03973 
03974   datawriterQos::datawriterQos (datawriterQos const& s) :
03975   ::XSCRT::Type (s)
03976   , durability_ (s.durability_.get () ? new ::dds::durabilityQosPolicy (*s.durability_) : 0)
03977   , durability_service_ (s.durability_service_.get () ? new ::dds::durabilityServiceQosPolicy (*s.durability_service_) : 0)
03978   , deadline_ (s.deadline_.get () ? new ::dds::deadlineQosPolicy (*s.deadline_) : 0)
03979   , latency_budget_ (s.latency_budget_.get () ? new ::dds::latencyBudgetQosPolicy (*s.latency_budget_) : 0)
03980   , liveliness_ (s.liveliness_.get () ? new ::dds::livelinessQosPolicy (*s.liveliness_) : 0)
03981   , reliability_ (s.reliability_.get () ? new ::dds::reliabilityQosPolicy (*s.reliability_) : 0)
03982   , destination_order_ (s.destination_order_.get () ? new ::dds::destinationOrderQosPolicy (*s.destination_order_) : 0)
03983   , history_ (s.history_.get () ? new ::dds::historyQosPolicy (*s.history_) : 0)
03984   , resource_limits_ (s.resource_limits_.get () ? new ::dds::resourceLimitsQosPolicy (*s.resource_limits_) : 0)
03985   , transport_priority_ (s.transport_priority_.get () ? new ::dds::transportPriorityQosPolicy (*s.transport_priority_) : 0)
03986   , lifespan_ (s.lifespan_.get () ? new ::dds::lifespanQosPolicy (*s.lifespan_) : 0)
03987   , user_data_ (s.user_data_.get () ? new ::dds::userDataQosPolicy (*s.user_data_) : 0)
03988   , ownership_ (s.ownership_.get () ? new ::dds::ownershipQosPolicy (*s.ownership_) : 0)
03989   , ownership_strength_ (s.ownership_strength_.get () ? new ::dds::ownershipStrengthQosPolicy (*s.ownership_strength_) : 0)
03990   , writer_data_lifecycle_ (s.writer_data_lifecycle_.get () ? new ::dds::writerDataLifecycleQosPolicy (*s.writer_data_lifecycle_) : 0)
03991   , name_ (s.name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.name_) : 0)
03992   , base_name_ (s.base_name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.base_name_) : 0)
03993   , topic_filter_ (s.topic_filter_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.topic_filter_) : 0)
03994   {
03995     if (durability_.get ()) durability_->container (this);
03996     if (durability_service_.get ()) durability_service_->container (this);
03997     if (deadline_.get ()) deadline_->container (this);
03998     if (latency_budget_.get ()) latency_budget_->container (this);
03999     if (liveliness_.get ()) liveliness_->container (this);
04000     if (reliability_.get ()) reliability_->container (this);
04001     if (destination_order_.get ()) destination_order_->container (this);
04002     if (history_.get ()) history_->container (this);
04003     if (resource_limits_.get ()) resource_limits_->container (this);
04004     if (transport_priority_.get ()) transport_priority_->container (this);
04005     if (lifespan_.get ()) lifespan_->container (this);
04006     if (user_data_.get ()) user_data_->container (this);
04007     if (ownership_.get ()) ownership_->container (this);
04008     if (ownership_strength_.get ()) ownership_strength_->container (this);
04009     if (writer_data_lifecycle_.get ()) writer_data_lifecycle_->container (this);
04010     if (name_.get ()) name_->container (this);
04011     if (base_name_.get ()) base_name_->container (this);
04012     if (topic_filter_.get ()) topic_filter_->container (this);
04013   }
04014 
04015   datawriterQos&
04016   datawriterQos::operator= (datawriterQos const& s)
04017   {
04018     if (&s != this)
04019     {
04020       if (s.durability_.get ())
04021         durability (*(s.durability_));
04022       else
04023         durability_.reset (0);
04024 
04025       if (s.durability_service_.get ())
04026         durability_service (*(s.durability_service_));
04027       else
04028         durability_service_.reset (0);
04029 
04030       if (s.deadline_.get ())
04031         deadline (*(s.deadline_));
04032       else
04033         deadline_.reset (0);
04034 
04035       if (s.latency_budget_.get ())
04036         latency_budget (*(s.latency_budget_));
04037       else
04038         latency_budget_.reset (0);
04039 
04040       if (s.liveliness_.get ())
04041         liveliness (*(s.liveliness_));
04042       else
04043         liveliness_.reset (0);
04044 
04045       if (s.reliability_.get ())
04046         reliability (*(s.reliability_));
04047       else
04048         reliability_.reset (0);
04049 
04050       if (s.destination_order_.get ())
04051         destination_order (*(s.destination_order_));
04052       else
04053         destination_order_.reset (0);
04054 
04055       if (s.history_.get ())
04056         history (*(s.history_));
04057       else
04058         history_.reset (0);
04059 
04060       if (s.resource_limits_.get ())
04061         resource_limits (*(s.resource_limits_));
04062       else
04063         resource_limits_.reset (0);
04064 
04065       if (s.transport_priority_.get ())
04066         transport_priority (*(s.transport_priority_));
04067       else
04068         transport_priority_.reset (0);
04069 
04070       if (s.lifespan_.get ())
04071         lifespan (*(s.lifespan_));
04072       else
04073         lifespan_.reset (0);
04074 
04075       if (s.user_data_.get ())
04076         user_data (*(s.user_data_));
04077       else
04078         user_data_.reset (0);
04079 
04080       if (s.ownership_.get ())
04081         ownership (*(s.ownership_));
04082       else
04083         ownership_.reset (0);
04084 
04085       if (s.ownership_strength_.get ())
04086         ownership_strength (*(s.ownership_strength_));
04087       else
04088         ownership_strength_.reset (0);
04089 
04090       if (s.writer_data_lifecycle_.get ())
04091         writer_data_lifecycle (*(s.writer_data_lifecycle_));
04092       else
04093         writer_data_lifecycle_.reset (0);
04094 
04095       if (s.name_.get ()) name (*(s.name_));
04096       else name_.reset (0);
04097 
04098       if (s.base_name_.get ()) base_name (*(s.base_name_));
04099       else base_name_.reset (0);
04100 
04101       if (s.topic_filter_.get ()) topic_filter (*(s.topic_filter_));
04102       else topic_filter_.reset (0);
04103     }
04104 
04105     return *this;
04106   }
04107 
04108 
04109   // datawriterQos
04110   bool datawriterQos::
04111   durability_p () const
04112   {
04113     return durability_.get () != 0;
04114   }
04115 
04116   ::dds::durabilityQosPolicy const& datawriterQos::
04117   durability () const
04118   {
04119     return *durability_;
04120   }
04121 
04122   void datawriterQos::
04123   durability (::dds::durabilityQosPolicy const& e)
04124   {
04125     if (durability_.get ())
04126     {
04127       *durability_ = e;
04128     }
04129 
04130     else
04131     {
04132       durability_ = datawriterQos::durability_auto_ptr_type (new ::dds::durabilityQosPolicy (e));
04133       durability_->container (this);
04134     }
04135   }
04136 
04137   // datawriterQos
04138   bool datawriterQos::
04139   durability_service_p () const
04140   {
04141     return durability_service_.get () != 0;
04142   }
04143 
04144   ::dds::durabilityServiceQosPolicy const& datawriterQos::
04145   durability_service () const
04146   {
04147     return *durability_service_;
04148   }
04149 
04150   void datawriterQos::
04151   durability_service (::dds::durabilityServiceQosPolicy const& e)
04152   {
04153     if (durability_service_.get ())
04154     {
04155       *durability_service_ = e;
04156     }
04157 
04158     else
04159     {
04160       durability_service_ = datawriterQos::durability_service_auto_ptr_type (new ::dds::durabilityServiceQosPolicy (e));
04161       durability_service_->container (this);
04162     }
04163   }
04164 
04165   // datawriterQos
04166   bool datawriterQos::
04167   deadline_p () const
04168   {
04169     return deadline_.get () != 0;
04170   }
04171 
04172   ::dds::deadlineQosPolicy const& datawriterQos::
04173   deadline () const
04174   {
04175     return *deadline_;
04176   }
04177 
04178   void datawriterQos::
04179   deadline (::dds::deadlineQosPolicy const& e)
04180   {
04181     if (deadline_.get ())
04182     {
04183       *deadline_ = e;
04184     }
04185 
04186     else
04187     {
04188       deadline_ = datawriterQos::deadline_auto_ptr_type (new ::dds::deadlineQosPolicy (e));
04189       deadline_->container (this);
04190     }
04191   }
04192 
04193   // datawriterQos
04194   bool datawriterQos::
04195   latency_budget_p () const
04196   {
04197     return latency_budget_.get () != 0;
04198   }
04199 
04200   ::dds::latencyBudgetQosPolicy const& datawriterQos::
04201   latency_budget () const
04202   {
04203     return *latency_budget_;
04204   }
04205 
04206   void datawriterQos::
04207   latency_budget (::dds::latencyBudgetQosPolicy const& e)
04208   {
04209     if (latency_budget_.get ())
04210     {
04211       *latency_budget_ = e;
04212     }
04213 
04214     else
04215     {
04216       latency_budget_ = datawriterQos::latency_budget_auto_ptr_type (new ::dds::latencyBudgetQosPolicy (e));
04217       latency_budget_->container (this);
04218     }
04219   }
04220 
04221   // datawriterQos
04222   bool datawriterQos::
04223   liveliness_p () const
04224   {
04225     return liveliness_.get () != 0;
04226   }
04227 
04228   ::dds::livelinessQosPolicy const& datawriterQos::
04229   liveliness () const
04230   {
04231     return *liveliness_;
04232   }
04233 
04234   void datawriterQos::
04235   liveliness (::dds::livelinessQosPolicy const& e)
04236   {
04237     if (liveliness_.get ())
04238     {
04239       *liveliness_ = e;
04240     }
04241 
04242     else
04243     {
04244       liveliness_ = datawriterQos::liveliness_auto_ptr_type (new ::dds::livelinessQosPolicy (e));
04245       liveliness_->container (this);
04246     }
04247   }
04248 
04249   // datawriterQos
04250   bool datawriterQos::
04251   reliability_p () const
04252   {
04253     return reliability_.get () != 0;
04254   }
04255 
04256   ::dds::reliabilityQosPolicy const& datawriterQos::
04257   reliability () const
04258   {
04259     return *reliability_;
04260   }
04261 
04262   void datawriterQos::
04263   reliability (::dds::reliabilityQosPolicy const& e)
04264   {
04265     if (reliability_.get ())
04266     {
04267       *reliability_ = e;
04268     }
04269 
04270     else
04271     {
04272       reliability_ = datawriterQos::reliability_auto_ptr_type (new ::dds::reliabilityQosPolicy (e));
04273       reliability_->container (this);
04274     }
04275   }
04276 
04277   // datawriterQos
04278   bool datawriterQos::
04279   destination_order_p () const
04280   {
04281     return destination_order_.get () != 0;
04282   }
04283 
04284   ::dds::destinationOrderQosPolicy const& datawriterQos::
04285   destination_order () const
04286   {
04287     return *destination_order_;
04288   }
04289 
04290   void datawriterQos::
04291   destination_order (::dds::destinationOrderQosPolicy const& e)
04292   {
04293     if (destination_order_.get ())
04294     {
04295       *destination_order_ = e;
04296     }
04297 
04298     else
04299     {
04300       destination_order_ = datawriterQos::destination_order_auto_ptr_type (new ::dds::destinationOrderQosPolicy (e));
04301       destination_order_->container (this);
04302     }
04303   }
04304 
04305   // datawriterQos
04306   bool datawriterQos::
04307   history_p () const
04308   {
04309     return history_.get () != 0;
04310   }
04311 
04312   ::dds::historyQosPolicy const& datawriterQos::
04313   history () const
04314   {
04315     return *history_;
04316   }
04317 
04318   void datawriterQos::
04319   history (::dds::historyQosPolicy const& e)
04320   {
04321     if (history_.get ())
04322     {
04323       *history_ = e;
04324     }
04325 
04326     else
04327     {
04328       history_ = datawriterQos::history_auto_ptr_type (new ::dds::historyQosPolicy (e));
04329       history_->container (this);
04330     }
04331   }
04332 
04333   // datawriterQos
04334   bool datawriterQos::
04335   resource_limits_p () const
04336   {
04337     return resource_limits_.get () != 0;
04338   }
04339 
04340   ::dds::resourceLimitsQosPolicy const& datawriterQos::
04341   resource_limits () const
04342   {
04343     return *resource_limits_;
04344   }
04345 
04346   void datawriterQos::
04347   resource_limits (::dds::resourceLimitsQosPolicy const& e)
04348   {
04349     if (resource_limits_.get ())
04350     {
04351       *resource_limits_ = e;
04352     }
04353 
04354     else
04355     {
04356       resource_limits_ = datawriterQos::resource_limits_auto_ptr_type (new ::dds::resourceLimitsQosPolicy (e));
04357       resource_limits_->container (this);
04358     }
04359   }
04360 
04361   // datawriterQos
04362   bool datawriterQos::
04363   transport_priority_p () const
04364   {
04365     return transport_priority_.get () != 0;
04366   }
04367 
04368   ::dds::transportPriorityQosPolicy const& datawriterQos::
04369   transport_priority () const
04370   {
04371     return *transport_priority_;
04372   }
04373 
04374   void datawriterQos::
04375   transport_priority (::dds::transportPriorityQosPolicy const& e)
04376   {
04377     if (transport_priority_.get ())
04378     {
04379       *transport_priority_ = e;
04380     }
04381 
04382     else
04383     {
04384       transport_priority_ = datawriterQos::transport_priority_auto_ptr_type (new ::dds::transportPriorityQosPolicy (e));
04385       transport_priority_->container (this);
04386     }
04387   }
04388 
04389   // datawriterQos
04390   bool datawriterQos::
04391   lifespan_p () const
04392   {
04393     return lifespan_.get () != 0;
04394   }
04395 
04396   ::dds::lifespanQosPolicy const& datawriterQos::
04397   lifespan () const
04398   {
04399     return *lifespan_;
04400   }
04401 
04402   void datawriterQos::
04403   lifespan (::dds::lifespanQosPolicy const& e)
04404   {
04405     if (lifespan_.get ())
04406     {
04407       *lifespan_ = e;
04408     }
04409 
04410     else
04411     {
04412       lifespan_ = datawriterQos::lifespan_auto_ptr_type (new ::dds::lifespanQosPolicy (e));
04413       lifespan_->container (this);
04414     }
04415   }
04416 
04417   // datawriterQos
04418   bool datawriterQos::
04419   user_data_p () const
04420   {
04421     return user_data_.get () != 0;
04422   }
04423 
04424   ::dds::userDataQosPolicy const& datawriterQos::
04425   user_data () const
04426   {
04427     return *user_data_;
04428   }
04429 
04430   void datawriterQos::
04431   user_data (::dds::userDataQosPolicy const& e)
04432   {
04433     if (user_data_.get ())
04434     {
04435       *user_data_ = e;
04436     }
04437 
04438     else
04439     {
04440       user_data_ = datawriterQos::user_data_auto_ptr_type (new ::dds::userDataQosPolicy (e));
04441       user_data_->container (this);
04442     }
04443   }
04444 
04445   // datawriterQos
04446   bool datawriterQos::
04447   ownership_p () const
04448   {
04449     return ownership_.get () != 0;
04450   }
04451 
04452   ::dds::ownershipQosPolicy const& datawriterQos::
04453   ownership () const
04454   {
04455     return *ownership_;
04456   }
04457 
04458   void datawriterQos::
04459   ownership (::dds::ownershipQosPolicy const& e)
04460   {
04461     if (ownership_.get ())
04462     {
04463       *ownership_ = e;
04464     }
04465 
04466     else
04467     {
04468       ownership_ = datawriterQos::ownership_auto_ptr_type (new ::dds::ownershipQosPolicy (e));
04469       ownership_->container (this);
04470     }
04471   }
04472 
04473   // datawriterQos
04474   bool datawriterQos::
04475   ownership_strength_p () const
04476   {
04477     return ownership_strength_.get () != 0;
04478   }
04479 
04480   ::dds::ownershipStrengthQosPolicy const& datawriterQos::
04481   ownership_strength () const
04482   {
04483     return *ownership_strength_;
04484   }
04485 
04486   void datawriterQos::
04487   ownership_strength (::dds::ownershipStrengthQosPolicy const& e)
04488   {
04489     if (ownership_strength_.get ())
04490     {
04491       *ownership_strength_ = e;
04492     }
04493 
04494     else
04495     {
04496       ownership_strength_ = datawriterQos::ownership_strength_auto_ptr_type (new ::dds::ownershipStrengthQosPolicy (e));
04497       ownership_strength_->container (this);
04498     }
04499   }
04500 
04501   // datawriterQos
04502   bool datawriterQos::
04503   writer_data_lifecycle_p () const
04504   {
04505     return writer_data_lifecycle_.get () != 0;
04506   }
04507 
04508   ::dds::writerDataLifecycleQosPolicy const& datawriterQos::
04509   writer_data_lifecycle () const
04510   {
04511     return *writer_data_lifecycle_;
04512   }
04513 
04514   void datawriterQos::
04515   writer_data_lifecycle (::dds::writerDataLifecycleQosPolicy const& e)
04516   {
04517     if (writer_data_lifecycle_.get ())
04518     {
04519       *writer_data_lifecycle_ = e;
04520     }
04521 
04522     else
04523     {
04524       writer_data_lifecycle_ = datawriterQos::writer_data_lifecycle_auto_ptr_type (new ::dds::writerDataLifecycleQosPolicy (e));
04525       writer_data_lifecycle_->container (this);
04526     }
04527   }
04528 
04529   // datawriterQos
04530   bool datawriterQos::
04531   name_p () const
04532   {
04533     return name_.get () != 0;
04534   }
04535 
04536   ::XMLSchema::string<ACE_TCHAR> const& datawriterQos::
04537   name () const
04538   {
04539     return *name_;
04540   }
04541 
04542   ::XMLSchema::string<ACE_TCHAR>& datawriterQos::
04543   name ()
04544   {
04545     return *name_;
04546   }
04547 
04548   void datawriterQos::
04549   name (::XMLSchema::string<ACE_TCHAR> const& e)
04550   {
04551     if (name_.get ())
04552     {
04553       *name_ = e;
04554     }
04555 
04556     else
04557     {
04558       name_ = datawriterQos::name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
04559       name_->container (this);
04560     }
04561   }
04562 
04563   // datawriterQos
04564   bool datawriterQos::
04565   base_name_p () const
04566   {
04567     return base_name_.get () != 0;
04568   }
04569 
04570   ::XMLSchema::string<ACE_TCHAR> const& datawriterQos::
04571   base_name () const
04572   {
04573     return *base_name_;
04574   }
04575 
04576   ::XMLSchema::string<ACE_TCHAR>& datawriterQos::
04577   base_name ()
04578   {
04579     return *base_name_;
04580   }
04581 
04582   void datawriterQos::
04583   base_name (::XMLSchema::string<ACE_TCHAR> const& e)
04584   {
04585     if (base_name_.get ())
04586     {
04587       *base_name_ = e;
04588     }
04589 
04590     else
04591     {
04592       base_name_ = datawriterQos::base_name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
04593       base_name_->container (this);
04594     }
04595   }
04596 
04597   // datawriterQos
04598   bool datawriterQos::
04599   topic_filter_p () const
04600   {
04601     return topic_filter_.get () != 0;
04602   }
04603 
04604   ::XMLSchema::string<ACE_TCHAR> const& datawriterQos::
04605   topic_filter () const
04606   {
04607     return *topic_filter_;
04608   }
04609 
04610   ::XMLSchema::string<ACE_TCHAR>& datawriterQos::
04611   topic_filter ()
04612   {
04613     return *topic_filter_;
04614   }
04615 
04616   void datawriterQos::
04617   topic_filter (::XMLSchema::string<ACE_TCHAR> const& e)
04618   {
04619     if (topic_filter_.get ())
04620     {
04621       *topic_filter_ = e;
04622     }
04623 
04624     else
04625     {
04626       topic_filter_ = datawriterQos::topic_filter_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
04627       topic_filter_->container (this);
04628     }
04629   }
04630 
04631 
04632   // qosProfile
04633 
04634   qosProfile::qosProfile (::XMLSchema::string<ACE_TCHAR> const& name__)
04635   : ::XSCRT::Type ()
04636   , name_ (new ::XMLSchema::string<ACE_TCHAR> (name__))
04637   {
04638     name_->container (this);
04639   }
04640 
04641   qosProfile::qosProfile (qosProfile const& s) :
04642   ::XSCRT::Type (s)
04643   , datareader_qos_ (s.datareader_qos_)
04644   , datawriter_qos_ (s.datawriter_qos_)
04645   , topic_qos_ (s.topic_qos_)
04646   , domainparticipant_qos_ (s.domainparticipant_qos_)
04647   , publisher_qos_ (s.publisher_qos_)
04648   , subscriber_qos_ (s.subscriber_qos_)
04649   , name_ (new ::XMLSchema::string<ACE_TCHAR> (*s.name_))
04650   , base_name_ (s.base_name_.get () ? new ::XMLSchema::string<ACE_TCHAR> (*s.base_name_) : 0)
04651   {
04652     name_->container (this);
04653     if (base_name_.get ()) base_name_->container (this);
04654   }
04655 
04656   qosProfile&
04657   qosProfile::operator= (qosProfile const& s)
04658   {
04659     if (&s != this)
04660     {
04661       datareader_qos_ = s.datareader_qos_;
04662 
04663       datawriter_qos_ = s.datawriter_qos_;
04664 
04665       topic_qos_ = s.topic_qos_;
04666 
04667       domainparticipant_qos_ = s.domainparticipant_qos_;
04668 
04669       publisher_qos_ = s.publisher_qos_;
04670 
04671       subscriber_qos_ = s.subscriber_qos_;
04672 
04673       name (s.name ());
04674 
04675       if (s.base_name_.get ()) base_name (*(s.base_name_));
04676       else base_name_.reset (0);
04677     }
04678 
04679     return *this;
04680   }
04681 
04682 
04683   // qosProfile
04684   qosProfile::datareader_qos_iterator qosProfile::
04685   begin_datareader_qos ()
04686   {
04687     return datareader_qos_.begin ();
04688   }
04689 
04690   qosProfile::datareader_qos_iterator qosProfile::
04691   end_datareader_qos ()
04692   {
04693     return datareader_qos_.end ();
04694   }
04695 
04696   qosProfile::datareader_qos_const_iterator qosProfile::
04697   begin_datareader_qos () const
04698   {
04699     return datareader_qos_.begin ();
04700   }
04701 
04702   qosProfile::datareader_qos_const_iterator qosProfile::
04703   end_datareader_qos () const
04704   {
04705     return datareader_qos_.end ();
04706   }
04707 
04708   void qosProfile::
04709   add_datareader_qos (qosProfile::datareader_qos_value_type const& e)
04710   {
04711     datareader_qos_.push_back (e);
04712   }
04713 
04714   size_t qosProfile::
04715   count_datareader_qos(void) const
04716   {
04717     return datareader_qos_.size ();
04718   }
04719 
04720   // qosProfile
04721   qosProfile::datawriter_qos_iterator qosProfile::
04722   begin_datawriter_qos ()
04723   {
04724     return datawriter_qos_.begin ();
04725   }
04726 
04727   qosProfile::datawriter_qos_iterator qosProfile::
04728   end_datawriter_qos ()
04729   {
04730     return datawriter_qos_.end ();
04731   }
04732 
04733   qosProfile::datawriter_qos_const_iterator qosProfile::
04734   begin_datawriter_qos () const
04735   {
04736     return datawriter_qos_.begin ();
04737   }
04738 
04739   qosProfile::datawriter_qos_const_iterator qosProfile::
04740   end_datawriter_qos () const
04741   {
04742     return datawriter_qos_.end ();
04743   }
04744 
04745   void qosProfile::
04746   add_datawriter_qos (qosProfile::datawriter_qos_value_type const& e)
04747   {
04748     datawriter_qos_.push_back (e);
04749   }
04750 
04751   size_t qosProfile::
04752   count_datawriter_qos(void) const
04753   {
04754     return datawriter_qos_.size ();
04755   }
04756 
04757   // qosProfile
04758   qosProfile::topic_qos_iterator qosProfile::
04759   begin_topic_qos ()
04760   {
04761     return topic_qos_.begin ();
04762   }
04763 
04764   qosProfile::topic_qos_iterator qosProfile::
04765   end_topic_qos ()
04766   {
04767     return topic_qos_.end ();
04768   }
04769 
04770   qosProfile::topic_qos_const_iterator qosProfile::
04771   begin_topic_qos () const
04772   {
04773     return topic_qos_.begin ();
04774   }
04775 
04776   qosProfile::topic_qos_const_iterator qosProfile::
04777   end_topic_qos () const
04778   {
04779     return topic_qos_.end ();
04780   }
04781 
04782   void qosProfile::
04783   add_topic_qos (qosProfile::topic_qos_value_type const& e)
04784   {
04785     topic_qos_.push_back (e);
04786   }
04787 
04788   size_t qosProfile::
04789   count_topic_qos(void) const
04790   {
04791     return topic_qos_.size ();
04792   }
04793 
04794   // qosProfile
04795   qosProfile::domainparticipant_qos_iterator qosProfile::
04796   begin_domainparticipant_qos ()
04797   {
04798     return domainparticipant_qos_.begin ();
04799   }
04800 
04801   qosProfile::domainparticipant_qos_iterator qosProfile::
04802   end_domainparticipant_qos ()
04803   {
04804     return domainparticipant_qos_.end ();
04805   }
04806 
04807   qosProfile::domainparticipant_qos_const_iterator qosProfile::
04808   begin_domainparticipant_qos () const
04809   {
04810     return domainparticipant_qos_.begin ();
04811   }
04812 
04813   qosProfile::domainparticipant_qos_const_iterator qosProfile::
04814   end_domainparticipant_qos () const
04815   {
04816     return domainparticipant_qos_.end ();
04817   }
04818 
04819   void qosProfile::
04820   add_domainparticipant_qos (qosProfile::domainparticipant_qos_value_type const& e)
04821   {
04822     domainparticipant_qos_.push_back (e);
04823   }
04824 
04825   size_t qosProfile::
04826   count_domainparticipant_qos(void) const
04827   {
04828     return domainparticipant_qos_.size ();
04829   }
04830 
04831   // qosProfile
04832   qosProfile::publisher_qos_iterator qosProfile::
04833   begin_publisher_qos ()
04834   {
04835     return publisher_qos_.begin ();
04836   }
04837 
04838   qosProfile::publisher_qos_iterator qosProfile::
04839   end_publisher_qos ()
04840   {
04841     return publisher_qos_.end ();
04842   }
04843 
04844   qosProfile::publisher_qos_const_iterator qosProfile::
04845   begin_publisher_qos () const
04846   {
04847     return publisher_qos_.begin ();
04848   }
04849 
04850   qosProfile::publisher_qos_const_iterator qosProfile::
04851   end_publisher_qos () const
04852   {
04853     return publisher_qos_.end ();
04854   }
04855 
04856   void qosProfile::
04857   add_publisher_qos (qosProfile::publisher_qos_value_type const& e)
04858   {
04859     publisher_qos_.push_back (e);
04860   }
04861 
04862   size_t qosProfile::
04863   count_publisher_qos(void) const
04864   {
04865     return publisher_qos_.size ();
04866   }
04867 
04868   // qosProfile
04869   qosProfile::subscriber_qos_iterator qosProfile::
04870   begin_subscriber_qos ()
04871   {
04872     return subscriber_qos_.begin ();
04873   }
04874 
04875   qosProfile::subscriber_qos_iterator qosProfile::
04876   end_subscriber_qos ()
04877   {
04878     return subscriber_qos_.end ();
04879   }
04880 
04881   qosProfile::subscriber_qos_const_iterator qosProfile::
04882   begin_subscriber_qos () const
04883   {
04884     return subscriber_qos_.begin ();
04885   }
04886 
04887   qosProfile::subscriber_qos_const_iterator qosProfile::
04888   end_subscriber_qos () const
04889   {
04890     return subscriber_qos_.end ();
04891   }
04892 
04893   void qosProfile::
04894   add_subscriber_qos (qosProfile::subscriber_qos_value_type const& e)
04895   {
04896     subscriber_qos_.push_back (e);
04897   }
04898 
04899   size_t qosProfile::
04900   count_subscriber_qos(void) const
04901   {
04902     return subscriber_qos_.size ();
04903   }
04904 
04905   // qosProfile
04906   ::XMLSchema::string<ACE_TCHAR> const& qosProfile::
04907   name () const
04908   {
04909     return *name_;
04910   }
04911 
04912   ::XMLSchema::string<ACE_TCHAR>& qosProfile::
04913   name ()
04914   {
04915     return *name_;
04916   }
04917 
04918   void qosProfile::
04919   name (::XMLSchema::string<ACE_TCHAR> const& e)
04920   {
04921     *name_ = e;
04922   }
04923 
04924   // qosProfile
04925   bool qosProfile::
04926   base_name_p () const
04927   {
04928     return base_name_.get () != 0;
04929   }
04930 
04931   ::XMLSchema::string<ACE_TCHAR> const& qosProfile::
04932   base_name () const
04933   {
04934     return *base_name_;
04935   }
04936 
04937   ::XMLSchema::string<ACE_TCHAR>& qosProfile::
04938   base_name ()
04939   {
04940     return *base_name_;
04941   }
04942 
04943   void qosProfile::
04944   base_name (::XMLSchema::string<ACE_TCHAR> const& e)
04945   {
04946     if (base_name_.get ())
04947     {
04948       *base_name_ = e;
04949     }
04950 
04951     else
04952     {
04953       base_name_ = qosProfile::base_name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (e));
04954       base_name_->container (this);
04955     }
04956   }
04957 
04958 
04959   // qosProfile_seq
04960 
04961   qosProfile_seq::qosProfile_seq ()
04962   : ::XSCRT::Type ()
04963   {
04964   }
04965 
04966   qosProfile_seq::qosProfile_seq (qosProfile_seq const& s) :
04967   ::XSCRT::Type (s)
04968   , qos_profile_ (s.qos_profile_)
04969   {
04970   }
04971 
04972   qosProfile_seq&
04973   qosProfile_seq::operator= (qosProfile_seq const& s)
04974   {
04975     if (&s != this)
04976     {
04977       qos_profile_ = s.qos_profile_;
04978     }
04979 
04980     return *this;
04981   }
04982 
04983 
04984   // qosProfile_seq
04985   qosProfile_seq::qos_profile_iterator qosProfile_seq::
04986   begin_qos_profile ()
04987   {
04988     return qos_profile_.begin ();
04989   }
04990 
04991   qosProfile_seq::qos_profile_iterator qosProfile_seq::
04992   end_qos_profile ()
04993   {
04994     return qos_profile_.end ();
04995   }
04996 
04997   qosProfile_seq::qos_profile_const_iterator qosProfile_seq::
04998   begin_qos_profile () const
04999   {
05000     return qos_profile_.begin ();
05001   }
05002 
05003   qosProfile_seq::qos_profile_const_iterator qosProfile_seq::
05004   end_qos_profile () const
05005   {
05006     return qos_profile_.end ();
05007   }
05008 
05009   void qosProfile_seq::
05010   add_qos_profile (qosProfile_seq::qos_profile_value_type const& e)
05011   {
05012     qos_profile_.push_back (e);
05013   }
05014 
05015   size_t qosProfile_seq::
05016   count_qos_profile(void) const
05017   {
05018     return qos_profile_.size ();
05019   }
05020 }
05021 
05022 namespace dds
05023 {
05024   // destinationOrderKind
05025 
05026   destinationOrderKind::
05027   destinationOrderKind (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05028   : ::XSCRT::Type (e)
05029   {
05030     std::basic_string<ACE_TCHAR> v (e.value ());
05031 
05032     if (v == ACE_TEXT ("BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS")) v_ = BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS_l;
05033     else if (v == ACE_TEXT ("BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS")) v_ = BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS_l;
05034     else
05035     {
05036     }
05037   }
05038 
05039   destinationOrderKind::
05040   destinationOrderKind (::XSCRT::XML::Attribute<ACE_TCHAR> const& a)
05041   : ::XSCRT::Type (a)
05042   {
05043     std::basic_string<ACE_TCHAR> v (a.value ());
05044 
05045     if (v == ACE_TEXT ("BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS")) v_ = BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS_l;
05046     else if (v == ACE_TEXT ("BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS")) v_ = BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS_l;
05047     else
05048     {
05049     }
05050   }
05051 
05052   destinationOrderKind const destinationOrderKind::BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS (destinationOrderKind::BY_RECEPTION_TIMESTAMP_DESTINATIONORDER_QOS_l);
05053   destinationOrderKind const destinationOrderKind::BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS (destinationOrderKind::BY_SOURCE_TIMESTAMP_DESTINATIONORDER_QOS_l);
05054 
05055   // durabilityKind
05056 
05057   durabilityKind::
05058   durabilityKind (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05059   : ::XSCRT::Type (e)
05060   {
05061     std::basic_string<ACE_TCHAR> v (e.value ());
05062 
05063     if (v == ACE_TEXT ("VOLATILE_DURABILITY_QOS")) v_ = VOLATILE_DURABILITY_QOS_l;
05064     else if (v == ACE_TEXT ("TRANSIENT_LOCAL_DURABILITY_QOS")) v_ = TRANSIENT_LOCAL_DURABILITY_QOS_l;
05065     else if (v == ACE_TEXT ("TRANSIENT_DURABILITY_QOS")) v_ = TRANSIENT_DURABILITY_QOS_l;
05066     else if (v == ACE_TEXT ("PERSISTENT_DURABILITY_QOS")) v_ = PERSISTENT_DURABILITY_QOS_l;
05067     else
05068     {
05069     }
05070   }
05071 
05072   durabilityKind::
05073   durabilityKind (::XSCRT::XML::Attribute<ACE_TCHAR> const& a)
05074   : ::XSCRT::Type (a)
05075   {
05076     std::basic_string<ACE_TCHAR> v (a.value ());
05077 
05078     if (v == ACE_TEXT ("VOLATILE_DURABILITY_QOS")) v_ = VOLATILE_DURABILITY_QOS_l;
05079     else if (v == ACE_TEXT ("TRANSIENT_LOCAL_DURABILITY_QOS")) v_ = TRANSIENT_LOCAL_DURABILITY_QOS_l;
05080     else if (v == ACE_TEXT ("TRANSIENT_DURABILITY_QOS")) v_ = TRANSIENT_DURABILITY_QOS_l;
05081     else if (v == ACE_TEXT ("PERSISTENT_DURABILITY_QOS")) v_ = PERSISTENT_DURABILITY_QOS_l;
05082     else
05083     {
05084     }
05085   }
05086 
05087   durabilityKind const durabilityKind::VOLATILE_DURABILITY_QOS (durabilityKind::VOLATILE_DURABILITY_QOS_l);
05088   durabilityKind const durabilityKind::TRANSIENT_LOCAL_DURABILITY_QOS (durabilityKind::TRANSIENT_LOCAL_DURABILITY_QOS_l);
05089   durabilityKind const durabilityKind::TRANSIENT_DURABILITY_QOS (durabilityKind::TRANSIENT_DURABILITY_QOS_l);
05090   durabilityKind const durabilityKind::PERSISTENT_DURABILITY_QOS (durabilityKind::PERSISTENT_DURABILITY_QOS_l);
05091 
05092   // historyKind
05093 
05094   historyKind::
05095   historyKind (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05096   : ::XSCRT::Type (e)
05097   {
05098     std::basic_string<ACE_TCHAR> v (e.value ());
05099 
05100     if (v == ACE_TEXT ("KEEP_LAST_HISTORY_QOS")) v_ = KEEP_LAST_HISTORY_QOS_l;
05101     else if (v == ACE_TEXT ("KEEP_ALL_HISTORY_QOS")) v_ = KEEP_ALL_HISTORY_QOS_l;
05102     else
05103     {
05104     }
05105   }
05106 
05107   historyKind::
05108   historyKind (::XSCRT::XML::Attribute<ACE_TCHAR> const& a)
05109   : ::XSCRT::Type (a)
05110   {
05111     std::basic_string<ACE_TCHAR> v (a.value ());
05112 
05113     if (v == ACE_TEXT ("KEEP_LAST_HISTORY_QOS")) v_ = KEEP_LAST_HISTORY_QOS_l;
05114     else if (v == ACE_TEXT ("KEEP_ALL_HISTORY_QOS")) v_ = KEEP_ALL_HISTORY_QOS_l;
05115     else
05116     {
05117     }
05118   }
05119 
05120   historyKind const historyKind::KEEP_LAST_HISTORY_QOS (historyKind::KEEP_LAST_HISTORY_QOS_l);
05121   historyKind const historyKind::KEEP_ALL_HISTORY_QOS (historyKind::KEEP_ALL_HISTORY_QOS_l);
05122 
05123   // livelinessKind
05124 
05125   livelinessKind::
05126   livelinessKind (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05127   : ::XSCRT::Type (e)
05128   {
05129     std::basic_string<ACE_TCHAR> v (e.value ());
05130 
05131     if (v == ACE_TEXT ("AUTOMATIC_LIVELINESS_QOS")) v_ = AUTOMATIC_LIVELINESS_QOS_l;
05132     else if (v == ACE_TEXT ("MANUAL_BY_PARTICIPANT_LIVELINESS_QOS")) v_ = MANUAL_BY_PARTICIPANT_LIVELINESS_QOS_l;
05133     else if (v == ACE_TEXT ("MANUAL_BY_TOPIC_LIVELINESS_QOS")) v_ = MANUAL_BY_TOPIC_LIVELINESS_QOS_l;
05134     else
05135     {
05136     }
05137   }
05138 
05139   livelinessKind::
05140   livelinessKind (::XSCRT::XML::Attribute<ACE_TCHAR> const& a)
05141   : ::XSCRT::Type (a)
05142   {
05143     std::basic_string<ACE_TCHAR> v (a.value ());
05144 
05145     if (v == ACE_TEXT ("AUTOMATIC_LIVELINESS_QOS")) v_ = AUTOMATIC_LIVELINESS_QOS_l;
05146     else if (v == ACE_TEXT ("MANUAL_BY_PARTICIPANT_LIVELINESS_QOS")) v_ = MANUAL_BY_PARTICIPANT_LIVELINESS_QOS_l;
05147     else if (v == ACE_TEXT ("MANUAL_BY_TOPIC_LIVELINESS_QOS")) v_ = MANUAL_BY_TOPIC_LIVELINESS_QOS_l;
05148     else
05149     {
05150     }
05151   }
05152 
05153   livelinessKind const livelinessKind::AUTOMATIC_LIVELINESS_QOS (livelinessKind::AUTOMATIC_LIVELINESS_QOS_l);
05154   livelinessKind const livelinessKind::MANUAL_BY_PARTICIPANT_LIVELINESS_QOS (livelinessKind::MANUAL_BY_PARTICIPANT_LIVELINESS_QOS_l);
05155   livelinessKind const livelinessKind::MANUAL_BY_TOPIC_LIVELINESS_QOS (livelinessKind::MANUAL_BY_TOPIC_LIVELINESS_QOS_l);
05156 
05157   // presentationAccessScopeKind
05158 
05159   presentationAccessScopeKind::
05160   presentationAccessScopeKind (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05161   : ::XSCRT::Type (e)
05162   {
05163     std::basic_string<ACE_TCHAR> v (e.value ());
05164 
05165     if (v == ACE_TEXT ("INSTANCE_PRESENTATION_QOS")) v_ = INSTANCE_PRESENTATION_QOS_l;
05166     else if (v == ACE_TEXT ("TOPIC_PRESENTATION_QOS")) v_ = TOPIC_PRESENTATION_QOS_l;
05167     else if (v == ACE_TEXT ("GROUP_PRESENTATION_QOS")) v_ = GROUP_PRESENTATION_QOS_l;
05168     else
05169     {
05170     }
05171   }
05172 
05173   presentationAccessScopeKind::
05174   presentationAccessScopeKind (::XSCRT::XML::Attribute<ACE_TCHAR> const& a)
05175   : ::XSCRT::Type (a)
05176   {
05177     std::basic_string<ACE_TCHAR> v (a.value ());
05178 
05179     if (v == ACE_TEXT ("INSTANCE_PRESENTATION_QOS")) v_ = INSTANCE_PRESENTATION_QOS_l;
05180     else if (v == ACE_TEXT ("TOPIC_PRESENTATION_QOS")) v_ = TOPIC_PRESENTATION_QOS_l;
05181     else if (v == ACE_TEXT ("GROUP_PRESENTATION_QOS")) v_ = GROUP_PRESENTATION_QOS_l;
05182     else
05183     {
05184     }
05185   }
05186 
05187   presentationAccessScopeKind const presentationAccessScopeKind::INSTANCE_PRESENTATION_QOS (presentationAccessScopeKind::INSTANCE_PRESENTATION_QOS_l);
05188   presentationAccessScopeKind const presentationAccessScopeKind::TOPIC_PRESENTATION_QOS (presentationAccessScopeKind::TOPIC_PRESENTATION_QOS_l);
05189   presentationAccessScopeKind const presentationAccessScopeKind::GROUP_PRESENTATION_QOS (presentationAccessScopeKind::GROUP_PRESENTATION_QOS_l);
05190 
05191   // reliabilityKind
05192 
05193   reliabilityKind::
05194   reliabilityKind (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05195   : ::XSCRT::Type (e)
05196   {
05197     std::basic_string<ACE_TCHAR> v (e.value ());
05198 
05199     if (v == ACE_TEXT ("BEST_EFFORT_RELIABILITY_QOS")) v_ = BEST_EFFORT_RELIABILITY_QOS_l;
05200     else if (v == ACE_TEXT ("RELIABLE_RELIABILITY_QOS")) v_ = RELIABLE_RELIABILITY_QOS_l;
05201     else
05202     {
05203     }
05204   }
05205 
05206   reliabilityKind::
05207   reliabilityKind (::XSCRT::XML::Attribute<ACE_TCHAR> const& a)
05208   : ::XSCRT::Type (a)
05209   {
05210     std::basic_string<ACE_TCHAR> v (a.value ());
05211 
05212     if (v == ACE_TEXT ("BEST_EFFORT_RELIABILITY_QOS")) v_ = BEST_EFFORT_RELIABILITY_QOS_l;
05213     else if (v == ACE_TEXT ("RELIABLE_RELIABILITY_QOS")) v_ = RELIABLE_RELIABILITY_QOS_l;
05214     else
05215     {
05216     }
05217   }
05218 
05219   reliabilityKind const reliabilityKind::BEST_EFFORT_RELIABILITY_QOS (reliabilityKind::BEST_EFFORT_RELIABILITY_QOS_l);
05220   reliabilityKind const reliabilityKind::RELIABLE_RELIABILITY_QOS (reliabilityKind::RELIABLE_RELIABILITY_QOS_l);
05221 
05222   // ownershipKind
05223 
05224   ownershipKind::
05225   ownershipKind (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05226   : ::XSCRT::Type (e)
05227   {
05228     std::basic_string<ACE_TCHAR> v (e.value ());
05229 
05230     if (v == ACE_TEXT ("SHARED_OWNERSHIP_QOS")) v_ = SHARED_OWNERSHIP_QOS_l;
05231     else if (v == ACE_TEXT ("EXCLUSIVE_OWNERSHIP_QOS")) v_ = EXCLUSIVE_OWNERSHIP_QOS_l;
05232     else
05233     {
05234     }
05235   }
05236 
05237   ownershipKind::
05238   ownershipKind (::XSCRT::XML::Attribute<ACE_TCHAR> const& a)
05239   : ::XSCRT::Type (a)
05240   {
05241     std::basic_string<ACE_TCHAR> v (a.value ());
05242 
05243     if (v == ACE_TEXT ("SHARED_OWNERSHIP_QOS")) v_ = SHARED_OWNERSHIP_QOS_l;
05244     else if (v == ACE_TEXT ("EXCLUSIVE_OWNERSHIP_QOS")) v_ = EXCLUSIVE_OWNERSHIP_QOS_l;
05245     else
05246     {
05247     }
05248   }
05249 
05250   ownershipKind const ownershipKind::SHARED_OWNERSHIP_QOS (ownershipKind::SHARED_OWNERSHIP_QOS_l);
05251   ownershipKind const ownershipKind::EXCLUSIVE_OWNERSHIP_QOS (ownershipKind::EXCLUSIVE_OWNERSHIP_QOS_l);
05252 
05253   // duration
05254 
05255   duration::
05256   duration (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05257   :Base (e)
05258   {
05259 
05260     ::XSCRT::Parser<ACE_TCHAR> p (e);
05261 
05262     while (p.more_elements ())
05263     {
05264       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05265       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05266 
05267       if (n == ACE_TEXT("sec"))
05268       {
05269         ::XMLSchema::string<ACE_TCHAR> t (e);
05270         sec (t);
05271       }
05272 
05273       else if (n == ACE_TEXT("nanosec"))
05274       {
05275         ::XMLSchema::string<ACE_TCHAR> t (e);
05276         nanosec (t);
05277       }
05278 
05279       else
05280       {
05281       }
05282     }
05283   }
05284 
05285   // stringSeq
05286 
05287   stringSeq::
05288   stringSeq (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05289   :Base (e)
05290   {
05291 
05292     ::XSCRT::Parser<ACE_TCHAR> p (e);
05293 
05294     while (p.more_elements ())
05295     {
05296       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05297       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05298 
05299       if (n == ACE_TEXT("element"))
05300       {
05301         element_value_type t (new ::XMLSchema::string<ACE_TCHAR> (e));
05302         add_element (t);
05303       }
05304 
05305       else
05306       {
05307       }
05308     }
05309   }
05310 
05311   // deadlineQosPolicy
05312 
05313   deadlineQosPolicy::
05314   deadlineQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05315   :Base (e)
05316   {
05317 
05318     ::XSCRT::Parser<ACE_TCHAR> p (e);
05319 
05320     while (p.more_elements ())
05321     {
05322       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05323       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05324 
05325       if (n == ACE_TEXT("period"))
05326       {
05327         ::dds::duration t (e);
05328         period (t);
05329       }
05330 
05331       else
05332       {
05333       }
05334     }
05335   }
05336 
05337   // destinationOrderQosPolicy
05338 
05339   destinationOrderQosPolicy::
05340   destinationOrderQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05341   :Base (e)
05342   {
05343 
05344     ::XSCRT::Parser<ACE_TCHAR> p (e);
05345 
05346     while (p.more_elements ())
05347     {
05348       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05349       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05350 
05351       if (n == ACE_TEXT("kind"))
05352       {
05353         ::dds::destinationOrderKind t (e);
05354         kind (t);
05355       }
05356 
05357       else
05358       {
05359       }
05360     }
05361   }
05362 
05363   // durabilityQosPolicy
05364 
05365   durabilityQosPolicy::
05366   durabilityQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05367   :Base (e)
05368   {
05369 
05370     ::XSCRT::Parser<ACE_TCHAR> p (e);
05371 
05372     while (p.more_elements ())
05373     {
05374       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05375       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05376 
05377       if (n == ACE_TEXT("kind"))
05378       {
05379         ::dds::durabilityKind t (e);
05380         kind (t);
05381       }
05382 
05383       else
05384       {
05385       }
05386     }
05387   }
05388 
05389   // durabilityServiceQosPolicy
05390 
05391   durabilityServiceQosPolicy::
05392   durabilityServiceQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05393   :Base (e)
05394   {
05395 
05396     ::XSCRT::Parser<ACE_TCHAR> p (e);
05397 
05398     while (p.more_elements ())
05399     {
05400       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05401       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05402 
05403       if (n == ACE_TEXT("service_cleanup_delay"))
05404       {
05405         ::dds::duration t (e);
05406         service_cleanup_delay (t);
05407       }
05408 
05409       else if (n == ACE_TEXT("history_kind"))
05410       {
05411         ::dds::historyKind t (e);
05412         history_kind (t);
05413       }
05414 
05415       else if (n == ACE_TEXT("history_depth"))
05416       {
05417         ::XMLSchema::positiveInteger t (e);
05418         history_depth (t);
05419       }
05420 
05421       else if (n == ACE_TEXT("max_samples"))
05422       {
05423         ::XMLSchema::string<ACE_TCHAR> t (e);
05424         max_samples (t);
05425       }
05426 
05427       else if (n == ACE_TEXT("max_instances"))
05428       {
05429         ::XMLSchema::string<ACE_TCHAR> t (e);
05430         max_instances (t);
05431       }
05432 
05433       else if (n == ACE_TEXT("max_samples_per_instance"))
05434       {
05435         ::XMLSchema::string<ACE_TCHAR> t (e);
05436         max_samples_per_instance (t);
05437       }
05438 
05439       else
05440       {
05441       }
05442     }
05443   }
05444 
05445   // entityFactoryQosPolicy
05446 
05447   entityFactoryQosPolicy::
05448   entityFactoryQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05449   :Base (e)
05450   {
05451 
05452     ::XSCRT::Parser<ACE_TCHAR> p (e);
05453 
05454     while (p.more_elements ())
05455     {
05456       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05457       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05458 
05459       if (n == ACE_TEXT("autoenable_created_entities"))
05460       {
05461         ::XMLSchema::boolean t (e);
05462         autoenable_created_entities (t);
05463       }
05464 
05465       else
05466       {
05467       }
05468     }
05469   }
05470 
05471   // groupDataQosPolicy
05472 
05473   groupDataQosPolicy::
05474   groupDataQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05475   :Base (e)
05476   {
05477 
05478     ::XSCRT::Parser<ACE_TCHAR> p (e);
05479 
05480     while (p.more_elements ())
05481     {
05482       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05483       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05484 
05485       if (n == ACE_TEXT("value"))
05486       {
05487         ::XMLSchema::string<ACE_TCHAR> t (e);
05488         value (t);
05489       }
05490 
05491       else
05492       {
05493       }
05494     }
05495   }
05496 
05497   // historyQosPolicy
05498 
05499   historyQosPolicy::
05500   historyQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05501   :Base (e)
05502   {
05503 
05504     ::XSCRT::Parser<ACE_TCHAR> p (e);
05505 
05506     while (p.more_elements ())
05507     {
05508       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05509       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05510 
05511       if (n == ACE_TEXT("kind"))
05512       {
05513         ::dds::historyKind t (e);
05514         kind (t);
05515       }
05516 
05517       else if (n == ACE_TEXT("depth"))
05518       {
05519         ::XMLSchema::positiveInteger t (e);
05520         depth (t);
05521       }
05522 
05523       else
05524       {
05525       }
05526     }
05527   }
05528 
05529   // latencyBudgetQosPolicy
05530 
05531   latencyBudgetQosPolicy::
05532   latencyBudgetQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05533   :Base (e)
05534   {
05535 
05536     ::XSCRT::Parser<ACE_TCHAR> p (e);
05537 
05538     while (p.more_elements ())
05539     {
05540       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05541       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05542 
05543       if (n == ACE_TEXT("duration"))
05544       {
05545         ::dds::duration t (e);
05546         duration (t);
05547       }
05548 
05549       else
05550       {
05551       }
05552     }
05553   }
05554 
05555   // lifespanQosPolicy
05556 
05557   lifespanQosPolicy::
05558   lifespanQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05559   :Base (e)
05560   {
05561 
05562     ::XSCRT::Parser<ACE_TCHAR> p (e);
05563 
05564     while (p.more_elements ())
05565     {
05566       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05567       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05568 
05569       if (n == ACE_TEXT("duration"))
05570       {
05571         ::dds::duration t (e);
05572         duration (t);
05573       }
05574 
05575       else
05576       {
05577       }
05578     }
05579   }
05580 
05581   // livelinessQosPolicy
05582 
05583   livelinessQosPolicy::
05584   livelinessQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05585   :Base (e)
05586   {
05587 
05588     ::XSCRT::Parser<ACE_TCHAR> p (e);
05589 
05590     while (p.more_elements ())
05591     {
05592       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05593       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05594 
05595       if (n == ACE_TEXT("kind"))
05596       {
05597         ::dds::livelinessKind t (e);
05598         kind (t);
05599       }
05600 
05601       else if (n == ACE_TEXT("lease_duration"))
05602       {
05603         ::dds::duration t (e);
05604         lease_duration (t);
05605       }
05606 
05607       else
05608       {
05609       }
05610     }
05611   }
05612 
05613   // ownershipQosPolicy
05614 
05615   ownershipQosPolicy::
05616   ownershipQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05617   :Base (e)
05618   {
05619 
05620     ::XSCRT::Parser<ACE_TCHAR> p (e);
05621 
05622     while (p.more_elements ())
05623     {
05624       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05625       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05626 
05627       if (n == ACE_TEXT("kind"))
05628       {
05629         ::dds::ownershipKind t (e);
05630         kind (t);
05631       }
05632 
05633       else
05634       {
05635       }
05636     }
05637   }
05638 
05639   // ownershipStrengthQosPolicy
05640 
05641   ownershipStrengthQosPolicy::
05642   ownershipStrengthQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05643   :Base (e)
05644   {
05645 
05646     ::XSCRT::Parser<ACE_TCHAR> p (e);
05647 
05648     while (p.more_elements ())
05649     {
05650       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05651       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05652 
05653       if (n == ACE_TEXT("value"))
05654       {
05655         ::XMLSchema::nonNegativeInteger t (e);
05656         value (t);
05657       }
05658 
05659       else
05660       {
05661       }
05662     }
05663   }
05664 
05665   // partitionQosPolicy
05666 
05667   partitionQosPolicy::
05668   partitionQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05669   :Base (e)
05670   {
05671 
05672     ::XSCRT::Parser<ACE_TCHAR> p (e);
05673 
05674     while (p.more_elements ())
05675     {
05676       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05677       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05678 
05679       if (n == ACE_TEXT("name"))
05680       {
05681         ::dds::stringSeq t (e);
05682         name (t);
05683       }
05684 
05685       else
05686       {
05687       }
05688     }
05689   }
05690 
05691   // presentationQosPolicy
05692 
05693   presentationQosPolicy::
05694   presentationQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05695   :Base (e)
05696   {
05697 
05698     ::XSCRT::Parser<ACE_TCHAR> p (e);
05699 
05700     while (p.more_elements ())
05701     {
05702       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05703       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05704 
05705       if (n == ACE_TEXT("access_scope"))
05706       {
05707         ::dds::presentationAccessScopeKind t (e);
05708         access_scope (t);
05709       }
05710 
05711       else if (n == ACE_TEXT("coherent_access"))
05712       {
05713         ::XMLSchema::boolean t (e);
05714         coherent_access (t);
05715       }
05716 
05717       else if (n == ACE_TEXT("ordered_access"))
05718       {
05719         ::XMLSchema::boolean t (e);
05720         ordered_access (t);
05721       }
05722 
05723       else
05724       {
05725       }
05726     }
05727   }
05728 
05729   // readerDataLifecycleQosPolicy
05730 
05731   readerDataLifecycleQosPolicy::
05732   readerDataLifecycleQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05733   :Base (e)
05734   {
05735 
05736     ::XSCRT::Parser<ACE_TCHAR> p (e);
05737 
05738     while (p.more_elements ())
05739     {
05740       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05741       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05742 
05743       if (n == ACE_TEXT("autopurge_nowriter_samples_delay"))
05744       {
05745         ::dds::duration t (e);
05746         autopurge_nowriter_samples_delay (t);
05747       }
05748 
05749       else if (n == ACE_TEXT("autopurge_disposed_samples_delay"))
05750       {
05751         ::dds::duration t (e);
05752         autopurge_disposed_samples_delay (t);
05753       }
05754 
05755       else
05756       {
05757       }
05758     }
05759   }
05760 
05761   // reliabilityQosPolicy
05762 
05763   reliabilityQosPolicy::
05764   reliabilityQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05765   :Base (e)
05766   {
05767 
05768     ::XSCRT::Parser<ACE_TCHAR> p (e);
05769 
05770     while (p.more_elements ())
05771     {
05772       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05773       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05774 
05775       if (n == ACE_TEXT("kind"))
05776       {
05777         ::dds::reliabilityKind t (e);
05778         kind (t);
05779       }
05780 
05781       else if (n == ACE_TEXT("max_blocking_time"))
05782       {
05783         ::dds::duration t (e);
05784         max_blocking_time (t);
05785       }
05786 
05787       else
05788       {
05789       }
05790     }
05791   }
05792 
05793   // resourceLimitsQosPolicy
05794 
05795   resourceLimitsQosPolicy::
05796   resourceLimitsQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05797   :Base (e)
05798   {
05799 
05800     ::XSCRT::Parser<ACE_TCHAR> p (e);
05801 
05802     while (p.more_elements ())
05803     {
05804       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05805       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05806 
05807       if (n == ACE_TEXT("max_samples"))
05808       {
05809         ::XMLSchema::string<ACE_TCHAR> t (e);
05810         max_samples (t);
05811       }
05812 
05813       else if (n == ACE_TEXT("max_instances"))
05814       {
05815         ::XMLSchema::string<ACE_TCHAR> t (e);
05816         max_instances (t);
05817       }
05818 
05819       else if (n == ACE_TEXT("max_samples_per_instance"))
05820       {
05821         ::XMLSchema::string<ACE_TCHAR> t (e);
05822         max_samples_per_instance (t);
05823       }
05824 
05825       else if (n == ACE_TEXT("initial_samples"))
05826       {
05827         ::XMLSchema::positiveInteger t (e);
05828         initial_samples (t);
05829       }
05830 
05831       else if (n == ACE_TEXT("initial_instances"))
05832       {
05833         ::XMLSchema::positiveInteger t (e);
05834         initial_instances (t);
05835       }
05836 
05837       else
05838       {
05839       }
05840     }
05841   }
05842 
05843   // timeBasedFilterQosPolicy
05844 
05845   timeBasedFilterQosPolicy::
05846   timeBasedFilterQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05847   :Base (e)
05848   {
05849 
05850     ::XSCRT::Parser<ACE_TCHAR> p (e);
05851 
05852     while (p.more_elements ())
05853     {
05854       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05855       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05856 
05857       if (n == ACE_TEXT("minimum_separation"))
05858       {
05859         ::dds::duration t (e);
05860         minimum_separation (t);
05861       }
05862 
05863       else
05864       {
05865       }
05866     }
05867   }
05868 
05869   // topicDataQosPolicy
05870 
05871   topicDataQosPolicy::
05872   topicDataQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05873   :Base (e)
05874   {
05875 
05876     ::XSCRT::Parser<ACE_TCHAR> p (e);
05877 
05878     while (p.more_elements ())
05879     {
05880       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05881       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05882 
05883       if (n == ACE_TEXT("value"))
05884       {
05885         ::XMLSchema::string<ACE_TCHAR> t (e);
05886         value (t);
05887       }
05888 
05889       else
05890       {
05891       }
05892     }
05893   }
05894 
05895   // transportPriorityQosPolicy
05896 
05897   transportPriorityQosPolicy::
05898   transportPriorityQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05899   :Base (e)
05900   {
05901 
05902     ::XSCRT::Parser<ACE_TCHAR> p (e);
05903 
05904     while (p.more_elements ())
05905     {
05906       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05907       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05908 
05909       if (n == ACE_TEXT("value"))
05910       {
05911         ::XMLSchema::nonNegativeInteger t (e);
05912         value (t);
05913       }
05914 
05915       else
05916       {
05917       }
05918     }
05919   }
05920 
05921   // userDataQosPolicy
05922 
05923   userDataQosPolicy::
05924   userDataQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05925   :Base (e)
05926   {
05927 
05928     ::XSCRT::Parser<ACE_TCHAR> p (e);
05929 
05930     while (p.more_elements ())
05931     {
05932       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05933       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05934 
05935       if (n == ACE_TEXT("value"))
05936       {
05937         ::XMLSchema::string<ACE_TCHAR> t (e);
05938         value (t);
05939       }
05940 
05941       else
05942       {
05943       }
05944     }
05945   }
05946 
05947   // writerDataLifecycleQosPolicy
05948 
05949   writerDataLifecycleQosPolicy::
05950   writerDataLifecycleQosPolicy (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05951   :Base (e)
05952   {
05953 
05954     ::XSCRT::Parser<ACE_TCHAR> p (e);
05955 
05956     while (p.more_elements ())
05957     {
05958       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05959       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05960 
05961       if (n == ACE_TEXT("autodispose_unregistered_instances"))
05962       {
05963         ::XMLSchema::boolean t (e);
05964         autodispose_unregistered_instances (t);
05965       }
05966 
05967       else
05968       {
05969       }
05970     }
05971   }
05972 
05973   // domainparticipantQos
05974 
05975   domainparticipantQos::
05976   domainparticipantQos (::XSCRT::XML::Element<ACE_TCHAR> const& e)
05977   :Base (e)
05978   {
05979 
05980     ::XSCRT::Parser<ACE_TCHAR> p (e);
05981 
05982     while (p.more_elements ())
05983     {
05984       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
05985       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
05986 
05987       if (n == ACE_TEXT("user_data"))
05988       {
05989         ::dds::userDataQosPolicy t (e);
05990         user_data (t);
05991       }
05992 
05993       else if (n == ACE_TEXT("entity_factory"))
05994       {
05995         ::dds::entityFactoryQosPolicy t (e);
05996         entity_factory (t);
05997       }
05998 
05999       else
06000       {
06001       }
06002     }
06003 
06004     while (p.more_attributes ())
06005     {
06006       ::XSCRT::XML::Attribute<ACE_TCHAR> a (p.next_attribute ());
06007       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (a.name ()));
06008       if (n == ACE_TEXT ("name"))
06009       {
06010         ::XMLSchema::string<ACE_TCHAR> t (a);
06011         name (t);
06012       }
06013 
06014       else if (n == ACE_TEXT ("base_name"))
06015       {
06016         ::XMLSchema::string<ACE_TCHAR> t (a);
06017         base_name (t);
06018       }
06019 
06020       else
06021       {
06022       }
06023     }
06024   }
06025 
06026   // publisherQos
06027 
06028   publisherQos::
06029   publisherQos (::XSCRT::XML::Element<ACE_TCHAR> const& e)
06030   :Base (e)
06031   {
06032 
06033     ::XSCRT::Parser<ACE_TCHAR> p (e);
06034 
06035     while (p.more_elements ())
06036     {
06037       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
06038       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
06039 
06040       if (n == ACE_TEXT("presentation"))
06041       {
06042         ::dds::presentationQosPolicy t (e);
06043         presentation (t);
06044       }
06045 
06046       else if (n == ACE_TEXT("partition"))
06047       {
06048         ::dds::partitionQosPolicy t (e);
06049         partition (t);
06050       }
06051 
06052       else if (n == ACE_TEXT("group_data"))
06053       {
06054         ::dds::groupDataQosPolicy t (e);
06055         group_data (t);
06056       }
06057 
06058       else if (n == ACE_TEXT("entity_factory"))
06059       {
06060         ::dds::entityFactoryQosPolicy t (e);
06061         entity_factory (t);
06062       }
06063 
06064       else
06065       {
06066       }
06067     }
06068 
06069     while (p.more_attributes ())
06070     {
06071       ::XSCRT::XML::Attribute<ACE_TCHAR> a (p.next_attribute ());
06072       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (a.name ()));
06073       if (n == ACE_TEXT ("name"))
06074       {
06075         ::XMLSchema::string<ACE_TCHAR> t (a);
06076         name (t);
06077       }
06078 
06079       else if (n == ACE_TEXT ("base_name"))
06080       {
06081         ::XMLSchema::string<ACE_TCHAR> t (a);
06082         base_name (t);
06083       }
06084 
06085       else
06086       {
06087       }
06088     }
06089   }
06090 
06091   // subscriberQos
06092 
06093   subscriberQos::
06094   subscriberQos (::XSCRT::XML::Element<ACE_TCHAR> const& e)
06095   :Base (e)
06096   {
06097 
06098     ::XSCRT::Parser<ACE_TCHAR> p (e);
06099 
06100     while (p.more_elements ())
06101     {
06102       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
06103       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
06104 
06105       if (n == ACE_TEXT("presentation"))
06106       {
06107         ::dds::presentationQosPolicy t (e);
06108         presentation (t);
06109       }
06110 
06111       else if (n == ACE_TEXT("partition"))
06112       {
06113         ::dds::partitionQosPolicy t (e);
06114         partition (t);
06115       }
06116 
06117       else if (n == ACE_TEXT("group_data"))
06118       {
06119         ::dds::groupDataQosPolicy t (e);
06120         group_data (t);
06121       }
06122 
06123       else if (n == ACE_TEXT("entity_factory"))
06124       {
06125         ::dds::entityFactoryQosPolicy t (e);
06126         entity_factory (t);
06127       }
06128 
06129       else
06130       {
06131       }
06132     }
06133 
06134     while (p.more_attributes ())
06135     {
06136       ::XSCRT::XML::Attribute<ACE_TCHAR> a (p.next_attribute ());
06137       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (a.name ()));
06138       if (n == ACE_TEXT ("name"))
06139       {
06140         ::XMLSchema::string<ACE_TCHAR> t (a);
06141         name (t);
06142       }
06143 
06144       else if (n == ACE_TEXT ("base_name"))
06145       {
06146         ::XMLSchema::string<ACE_TCHAR> t (a);
06147         base_name (t);
06148       }
06149 
06150       else
06151       {
06152       }
06153     }
06154   }
06155 
06156   // topicQos
06157 
06158   topicQos::
06159   topicQos (::XSCRT::XML::Element<ACE_TCHAR> const& e)
06160   :Base (e)
06161   {
06162 
06163     ::XSCRT::Parser<ACE_TCHAR> p (e);
06164 
06165     while (p.more_elements ())
06166     {
06167       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
06168       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
06169 
06170       if (n == ACE_TEXT("topic_data"))
06171       {
06172         ::dds::topicDataQosPolicy t (e);
06173         topic_data (t);
06174       }
06175 
06176       else if (n == ACE_TEXT("durability"))
06177       {
06178         ::dds::durabilityQosPolicy t (e);
06179         durability (t);
06180       }
06181 
06182       else if (n == ACE_TEXT("durability_service"))
06183       {
06184         ::dds::durabilityServiceQosPolicy t (e);
06185         durability_service (t);
06186       }
06187 
06188       else if (n == ACE_TEXT("deadline"))
06189       {
06190         ::dds::deadlineQosPolicy t (e);
06191         deadline (t);
06192       }
06193 
06194       else if (n == ACE_TEXT("latency_budget"))
06195       {
06196         ::dds::latencyBudgetQosPolicy t (e);
06197         latency_budget (t);
06198       }
06199 
06200       else if (n == ACE_TEXT("liveliness"))
06201       {
06202         ::dds::livelinessQosPolicy t (e);
06203         liveliness (t);
06204       }
06205 
06206       else if (n == ACE_TEXT("reliability"))
06207       {
06208         ::dds::reliabilityQosPolicy t (e);
06209         reliability (t);
06210       }
06211 
06212       else if (n == ACE_TEXT("destination_order"))
06213       {
06214         ::dds::destinationOrderQosPolicy t (e);
06215         destination_order (t);
06216       }
06217 
06218       else if (n == ACE_TEXT("history"))
06219       {
06220         ::dds::historyQosPolicy t (e);
06221         history (t);
06222       }
06223 
06224       else if (n == ACE_TEXT("resource_limits"))
06225       {
06226         ::dds::resourceLimitsQosPolicy t (e);
06227         resource_limits (t);
06228       }
06229 
06230       else if (n == ACE_TEXT("transport_priority"))
06231       {
06232         ::dds::transportPriorityQosPolicy t (e);
06233         transport_priority (t);
06234       }
06235 
06236       else if (n == ACE_TEXT("lifespan"))
06237       {
06238         ::dds::lifespanQosPolicy t (e);
06239         lifespan (t);
06240       }
06241 
06242       else if (n == ACE_TEXT("ownership"))
06243       {
06244         ::dds::ownershipQosPolicy t (e);
06245         ownership (t);
06246       }
06247 
06248       else
06249       {
06250       }
06251     }
06252 
06253     while (p.more_attributes ())
06254     {
06255       ::XSCRT::XML::Attribute<ACE_TCHAR> a (p.next_attribute ());
06256       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (a.name ()));
06257       if (n == ACE_TEXT ("name"))
06258       {
06259         ::XMLSchema::string<ACE_TCHAR> t (a);
06260         name (t);
06261       }
06262 
06263       else if (n == ACE_TEXT ("base_name"))
06264       {
06265         ::XMLSchema::string<ACE_TCHAR> t (a);
06266         base_name (t);
06267       }
06268 
06269       else if (n == ACE_TEXT ("topic_filter"))
06270       {
06271         ::XMLSchema::string<ACE_TCHAR> t (a);
06272         topic_filter (t);
06273       }
06274 
06275       else
06276       {
06277       }
06278     }
06279   }
06280 
06281   // datareaderQos
06282 
06283   datareaderQos::
06284   datareaderQos (::XSCRT::XML::Element<ACE_TCHAR> const& e)
06285   :Base (e)
06286   {
06287 
06288     ::XSCRT::Parser<ACE_TCHAR> p (e);
06289 
06290     while (p.more_elements ())
06291     {
06292       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
06293       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
06294 
06295       if (n == ACE_TEXT("durability"))
06296       {
06297         ::dds::durabilityQosPolicy t (e);
06298         durability (t);
06299       }
06300 
06301       else if (n == ACE_TEXT("deadline"))
06302       {
06303         ::dds::deadlineQosPolicy t (e);
06304         deadline (t);
06305       }
06306 
06307       else if (n == ACE_TEXT("latency_budget"))
06308       {
06309         ::dds::latencyBudgetQosPolicy t (e);
06310         latency_budget (t);
06311       }
06312 
06313       else if (n == ACE_TEXT("liveliness"))
06314       {
06315         ::dds::livelinessQosPolicy t (e);
06316         liveliness (t);
06317       }
06318 
06319       else if (n == ACE_TEXT("reliability"))
06320       {
06321         ::dds::reliabilityQosPolicy t (e);
06322         reliability (t);
06323       }
06324 
06325       else if (n == ACE_TEXT("destination_order"))
06326       {
06327         ::dds::destinationOrderQosPolicy t (e);
06328         destination_order (t);
06329       }
06330 
06331       else if (n == ACE_TEXT("history"))
06332       {
06333         ::dds::historyQosPolicy t (e);
06334         history (t);
06335       }
06336 
06337       else if (n == ACE_TEXT("resource_limits"))
06338       {
06339         ::dds::resourceLimitsQosPolicy t (e);
06340         resource_limits (t);
06341       }
06342 
06343       else if (n == ACE_TEXT("user_data"))
06344       {
06345         ::dds::userDataQosPolicy t (e);
06346         user_data (t);
06347       }
06348 
06349       else if (n == ACE_TEXT("ownership"))
06350       {
06351         ::dds::ownershipQosPolicy t (e);
06352         ownership (t);
06353       }
06354 
06355       else if (n == ACE_TEXT("time_based_filter"))
06356       {
06357         ::dds::timeBasedFilterQosPolicy t (e);
06358         time_based_filter (t);
06359       }
06360 
06361       else if (n == ACE_TEXT("reader_data_lifecycle"))
06362       {
06363         ::dds::readerDataLifecycleQosPolicy t (e);
06364         reader_data_lifecycle (t);
06365       }
06366 
06367       else
06368       {
06369       }
06370     }
06371 
06372     while (p.more_attributes ())
06373     {
06374       ::XSCRT::XML::Attribute<ACE_TCHAR> a (p.next_attribute ());
06375       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (a.name ()));
06376       if (n == ACE_TEXT ("name"))
06377       {
06378         ::XMLSchema::string<ACE_TCHAR> t (a);
06379         name (t);
06380       }
06381 
06382       else if (n == ACE_TEXT ("base_name"))
06383       {
06384         ::XMLSchema::string<ACE_TCHAR> t (a);
06385         base_name (t);
06386       }
06387 
06388       else if (n == ACE_TEXT ("topic_filter"))
06389       {
06390         ::XMLSchema::string<ACE_TCHAR> t (a);
06391         topic_filter (t);
06392       }
06393 
06394       else
06395       {
06396       }
06397     }
06398   }
06399 
06400   // datawriterQos
06401 
06402   datawriterQos::
06403   datawriterQos (::XSCRT::XML::Element<ACE_TCHAR> const& e)
06404   :Base (e)
06405   {
06406 
06407     ::XSCRT::Parser<ACE_TCHAR> p (e);
06408 
06409     while (p.more_elements ())
06410     {
06411       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
06412       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
06413 
06414       if (n == ACE_TEXT("durability"))
06415       {
06416         ::dds::durabilityQosPolicy t (e);
06417         durability (t);
06418       }
06419 
06420       else if (n == ACE_TEXT("durability_service"))
06421       {
06422         ::dds::durabilityServiceQosPolicy t (e);
06423         durability_service (t);
06424       }
06425 
06426       else if (n == ACE_TEXT("deadline"))
06427       {
06428         ::dds::deadlineQosPolicy t (e);
06429         deadline (t);
06430       }
06431 
06432       else if (n == ACE_TEXT("latency_budget"))
06433       {
06434         ::dds::latencyBudgetQosPolicy t (e);
06435         latency_budget (t);
06436       }
06437 
06438       else if (n == ACE_TEXT("liveliness"))
06439       {
06440         ::dds::livelinessQosPolicy t (e);
06441         liveliness (t);
06442       }
06443 
06444       else if (n == ACE_TEXT("reliability"))
06445       {
06446         ::dds::reliabilityQosPolicy t (e);
06447         reliability (t);
06448       }
06449 
06450       else if (n == ACE_TEXT("destination_order"))
06451       {
06452         ::dds::destinationOrderQosPolicy t (e);
06453         destination_order (t);
06454       }
06455 
06456       else if (n == ACE_TEXT("history"))
06457       {
06458         ::dds::historyQosPolicy t (e);
06459         history (t);
06460       }
06461 
06462       else if (n == ACE_TEXT("resource_limits"))
06463       {
06464         ::dds::resourceLimitsQosPolicy t (e);
06465         resource_limits (t);
06466       }
06467 
06468       else if (n == ACE_TEXT("transport_priority"))
06469       {
06470         ::dds::transportPriorityQosPolicy t (e);
06471         transport_priority (t);
06472       }
06473 
06474       else if (n == ACE_TEXT("lifespan"))
06475       {
06476         ::dds::lifespanQosPolicy t (e);
06477         lifespan (t);
06478       }
06479 
06480       else if (n == ACE_TEXT("user_data"))
06481       {
06482         ::dds::userDataQosPolicy t (e);
06483         user_data (t);
06484       }
06485 
06486       else if (n == ACE_TEXT("ownership"))
06487       {
06488         ::dds::ownershipQosPolicy t (e);
06489         ownership (t);
06490       }
06491 
06492       else if (n == ACE_TEXT("ownership_strength"))
06493       {
06494         ::dds::ownershipStrengthQosPolicy t (e);
06495         ownership_strength (t);
06496       }
06497 
06498       else if (n == ACE_TEXT("writer_data_lifecycle"))
06499       {
06500         ::dds::writerDataLifecycleQosPolicy t (e);
06501         writer_data_lifecycle (t);
06502       }
06503 
06504       else
06505       {
06506       }
06507     }
06508 
06509     while (p.more_attributes ())
06510     {
06511       ::XSCRT::XML::Attribute<ACE_TCHAR> a (p.next_attribute ());
06512       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (a.name ()));
06513       if (n == ACE_TEXT ("name"))
06514       {
06515         ::XMLSchema::string<ACE_TCHAR> t (a);
06516         name (t);
06517       }
06518 
06519       else if (n == ACE_TEXT ("base_name"))
06520       {
06521         ::XMLSchema::string<ACE_TCHAR> t (a);
06522         base_name (t);
06523       }
06524 
06525       else if (n == ACE_TEXT ("topic_filter"))
06526       {
06527         ::XMLSchema::string<ACE_TCHAR> t (a);
06528         topic_filter (t);
06529       }
06530 
06531       else
06532       {
06533       }
06534     }
06535   }
06536 
06537   // qosProfile
06538 
06539   qosProfile::
06540   qosProfile (::XSCRT::XML::Element<ACE_TCHAR> const& e)
06541   :Base (e)
06542   {
06543 
06544     ::XSCRT::Parser<ACE_TCHAR> p (e);
06545 
06546     while (p.more_elements ())
06547     {
06548       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
06549       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
06550 
06551       if (n == ACE_TEXT("datareader_qos"))
06552       {
06553         datareader_qos_value_type t (new ::dds::datareaderQos (e));
06554         add_datareader_qos (t);
06555       }
06556 
06557       else if (n == ACE_TEXT("datawriter_qos"))
06558       {
06559         datawriter_qos_value_type t (new ::dds::datawriterQos (e));
06560         add_datawriter_qos (t);
06561       }
06562 
06563       else if (n == ACE_TEXT("topic_qos"))
06564       {
06565         topic_qos_value_type t (new ::dds::topicQos (e));
06566         add_topic_qos (t);
06567       }
06568 
06569       else if (n == ACE_TEXT("domainparticipant_qos"))
06570       {
06571         domainparticipant_qos_value_type t (new ::dds::domainparticipantQos (e));
06572         add_domainparticipant_qos (t);
06573       }
06574 
06575       else if (n == ACE_TEXT("publisher_qos"))
06576       {
06577         publisher_qos_value_type t (new ::dds::publisherQos (e));
06578         add_publisher_qos (t);
06579       }
06580 
06581       else if (n == ACE_TEXT("subscriber_qos"))
06582       {
06583         subscriber_qos_value_type t (new ::dds::subscriberQos (e));
06584         add_subscriber_qos (t);
06585       }
06586 
06587       else
06588       {
06589       }
06590     }
06591 
06592     while (p.more_attributes ())
06593     {
06594       ::XSCRT::XML::Attribute<ACE_TCHAR> a (p.next_attribute ());
06595       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (a.name ()));
06596       if (n == ACE_TEXT ("name"))
06597       {
06598         name_ = qosProfile::name_auto_ptr_type (new ::XMLSchema::string<ACE_TCHAR> (a));
06599         name_->container (this);
06600       }
06601 
06602       else if (n == ACE_TEXT ("base_name"))
06603       {
06604         ::XMLSchema::string<ACE_TCHAR> t (a);
06605         base_name (t);
06606       }
06607 
06608       else
06609       {
06610       }
06611     }
06612   }
06613 
06614   // qosProfile_seq
06615 
06616   qosProfile_seq::
06617   qosProfile_seq (::XSCRT::XML::Element<ACE_TCHAR> const& e)
06618   :Base (e)
06619   {
06620 
06621     ::XSCRT::Parser<ACE_TCHAR> p (e);
06622 
06623     while (p.more_elements ())
06624     {
06625       ::XSCRT::XML::Element<ACE_TCHAR> e (p.next_element ());
06626       std::basic_string<ACE_TCHAR> n (::XSCRT::XML::uq_name (e.name ()));
06627 
06628       if (n == ACE_TEXT("qos_profile"))
06629       {
06630         qos_profile_value_type t (new ::dds::qosProfile (e));
06631         add_qos_profile (t);
06632       }
06633 
06634       else
06635       {
06636       }
06637     }
06638   }
06639 }
06640 
06641 namespace dds
06642 {
06643   namespace reader
06644   {
06645     ::dds::qosProfile_seq
06646     dds (xercesc::DOMDocument const* d)
06647     {
06648       // Initiate our Singleton as an ACE_TSS object (ensures thread
06649       // specific storage
06650       ID_Map::TSS_ID_Map* TSS_ID_Map (ACE_Singleton<ID_Map::TSS_ID_Map, ACE_Null_Mutex>::instance());
06651       xercesc::DOMElement* dom_element = d->getDocumentElement ();
06652       if (!dom_element)
06653       {
06654         throw 1;
06655       }
06656 
06657       ::XSCRT::XML::Element<ACE_TCHAR> e (dom_element);
06658       if (e.name () == ACE_TEXT("dds"))
06659       {
06660         ::dds::qosProfile_seq r (e);
06661 
06662         (*TSS_ID_Map)->resolve_idref();
06663 
06664         return r;
06665       }
06666 
06667       else
06668       {
06669         throw 1;
06670       }
06671     }
06672   }
06673 }
06674 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 10 Aug 2018 for OpenDDS by  doxygen 1.6.1