Rhino C++ API  8.14
Classes | Public Member Functions | List of all members
IRhRdk_XMLSection Class Referenceabstract

#include <IRhRdk_XMLSection.h>

Inheritance diagram for IRhRdk_XMLSection:
IRhRdk_XMLSection2

Classes

class  IExtraRequirements
 
class  Iterator
 

Public Member Functions

virtual ~IRhRdk_XMLSection ()
 
virtual ON_wString AsString (void) const =0
 
virtual void DebugDump (void) const =0
 
virtual void * EVF (const wchar_t *, void *)=0
 
virtual bool GetParam (const wchar_t *wszParamName, CRhRdkVariant &vParamValueOut, const IExtraRequirements **ppExtraOut=NULL) const =0
 
virtual bool IsEqual (const IRhRdk_XMLSection &s) const =0
 
virtual IteratorNewIterator (void) const =0
 
virtual bool NextParam (Iterator *pIterator, ON_wString &sParamNameOut, CRhRdkVariant &vParamValueOut, const IExtraRequirements **ppExtraOut=NULL) const =0
 
virtual void SetAsString (const wchar_t *wsz)=0
 
virtual void SetParam (const wchar_t *wszParamName, const CRhRdkVariant &vParamValue, const IExtraRequirements *pExtra=NULL, const wchar_t *wszBeacon=NULL)=0
 

Detailed Description

This interface represents one section of an XML stream. For example:

<section>
    <color type="color">0.5,0.8,0.9</color>
    <depth type="float">1.0</depth>
    <radius type="double" special="true" >5.0</radius>
</section>

the interface can be used to access the color, depth and radius values. 'special' is a marker-string ('beacon') which can be used for searching.

Constructor & Destructor Documentation

◆ ~IRhRdk_XMLSection()

virtual IRhRdk_XMLSection::~IRhRdk_XMLSection ( )
inlinevirtual

Member Function Documentation

◆ AsString()

virtual ON_wString IRhRdk_XMLSection::AsString ( void  ) const
pure virtual

Get the section data as an XML string.

◆ DebugDump()

virtual void IRhRdk_XMLSection::DebugDump ( void  ) const
pure virtual

Dump the parameters to the debugger output pane.

◆ EVF()

virtual void* IRhRdk_XMLSection::EVF ( const wchar_t *  ,
void *   
)
pure virtual

Emergency virtual function for future expansion.

◆ GetParam()

virtual bool IRhRdk_XMLSection::GetParam ( const wchar_t *  wszParamName,
CRhRdkVariant vParamValueOut,
const IExtraRequirements **  ppExtraOut = NULL 
) const
pure virtual

Get a parameter by its internal name.

Parameters
wszParamNameis the name of the parameter to get.
vParamValueOutreceives the value of the parameter if it exists.
ppExtraOutis an optional pointer that, if not NULL, will receive a pointer to an object containing the data of the parameter's extra requirements.
Returns
true if successful or false if the parameter does not exist.

◆ IsEqual()

virtual bool IRhRdk_XMLSection::IsEqual ( const IRhRdk_XMLSection s) const
pure virtual
Returns
true if the state of this object is equal to another one.

◆ NewIterator()

virtual Iterator* IRhRdk_XMLSection::NewIterator ( void  ) const
pure virtual

Get an iterator to use when calling NextParam(). The caller shall delete the iterator.

◆ NextParam()

virtual bool IRhRdk_XMLSection::NextParam ( Iterator pIterator,
ON_wString sParamNameOut,
CRhRdkVariant vParamValueOut,
const IExtraRequirements **  ppExtraOut = NULL 
) const
pure virtual

Get the next parameter name and value from the section.

Returns
true on success, false if no more parameters.

◆ SetAsString()

virtual void IRhRdk_XMLSection::SetAsString ( const wchar_t *  wsz)
pure virtual

Set the section data from an XML string.

◆ SetParam()

virtual void IRhRdk_XMLSection::SetParam ( const wchar_t *  wszParamName,
const CRhRdkVariant vParamValue,
const IExtraRequirements pExtra = NULL,
const wchar_t *  wszBeacon = NULL 
)
pure virtual

Set a parameter. The parameter is created if it doesn't exist.

Parameters
wszParamNameis the name that will appear in the XML output.
vParamValueis the value to assign to the name.
pExtrais an optional pointer to an object containing data for extra requirements.
wszBeaconis an optional marker string which will appear in the XML output and can be used for special purpose searching.