1
/****************************************************************************
3
** Copyright (c) 2008-2012 C.B. Barber. All rights reserved.
4
** $Id: //main/2011/qhull/src/libqhullcpp/RboxPoints.h#6 $$Change: 1464 $
5
** $DateTime: 2012/01/25 22:58:41 $$Author: bbarber $
7
****************************************************************************/
12
#include "QhullPoint.h"
13
#include "PointCoordinates.h"
15
#include "libqhull/libqhull.h"
28
//! RboxPoints -- generate random PointCoordinates for Qhull
31
class RboxPoints : public PointCoordinates {
35
int rbox_new_count; //! Number of points for PointCoordinates
36
int rbox_status; //! error status from rboxpoints. qh_ERRnone if none.
37
std::string rbox_message; //! stderr from rboxpoints
39
friend void ::qh_fprintf_rbox(FILE *fp, int msgcode, const char *fmt, ... );
44
explicit RboxPoints(const char *rboxCommand);
45
RboxPoints(const RboxPoints &other);
46
RboxPoints &operator=(const RboxPoints &other);
51
void clearRboxMessage();
52
int newCount() const { return rbox_new_count; }
53
std::string rboxMessage() const;
54
int rboxStatus() const;
55
bool hasRboxMessage() const;
56
void setNewCount(int pointCount) { QHULL_ASSERT(pointCount>=0); rbox_new_count= pointCount; }
59
void appendPoints(const char* rboxCommand);
60
using PointCoordinates::appendPoints;
61
void reservePoints() { reserveCoordinates((count()+newCount())*dimension()); }
66
#endif // RBOXPOINTS_H