- /// create a new buffer
- Buffer * newBuffer(std::string const & s, bool ronly = false);
+ /// create a new buffer and add it to the buffer list
+ /// \return 0 if the Buffer creation is not possible for whatever reason.
+ Buffer * newBuffer(std::string const & s);
+
+ /// create an internal buffer and add it to the internal buffer list
+ /// \return 0 if the Buffer creation is not possible for whatever reason.
+ Buffer * newInternalBuffer(std::string const & s);
+
+ /// Is child a child of some Buffer other than parent?
+ /// NOTE: child must be a child of parent, and both must be non-null.
+ /// Otherwise we assert.
+ bool isOthersChild(Buffer * parent, Buffer * child);