PFObject ================ The objects of this class encapsulate one or more data streams, describing a protocol object. .. cpp:function:: tPF_ObjectType getType(); :description: Returns the object type. .. cpp:function:: void setType(tPF_ObjectType type); :description: Sets the object type. .. cpp:function:: bool isReadOnly(); :description: Returns true if the object is read-only, i.e. posting it to the session has no effect. .. cpp:function:: void setReadOnly(bool value); :description: Sets the read-only flag. .. cpp:function:: int getStreamCount(); :description: Returns the number of object streams. .. cpp:function:: PFStream * getStream(int index = 0); :description: Returns a stream at the specified position. .. cpp:function:: void clear(); :description: Clears the object streams. .. cpp:function:: PFObject * clone(); :description: Creates a copy of the object. .. cpp:function:: PFObject * detach(); :description: Creates a copy of the object by moving all streams of the old object to the new one. The original object streams become empty. This method is useful as a faster alternative to clone(). For example, it makes sense to use detach() when implementing a queue of objects indicated via dataAvailable(). .. cpp:function:: void free(); :description: Deletes the object if it was created via PFObject_create(), clone() or detach().