libsgfc++ 2.0.1
A C++ library that uses SGFC to read and write SGF (Smart Game Format) data.
Loading...
Searching...
No Matches
Public Member Functions | List of all members
LibSgfcPlusPlus::SgfcGoStonePropertyValue Class Reference

The SgfcGoStonePropertyValue class provides an implementation of the ISgfcGoStonePropertyValue interface. See the interface header file for documentation. More...

#include <SgfcGoStonePropertyValue.h>

Inheritance diagram for LibSgfcPlusPlus::SgfcGoStonePropertyValue:
LibSgfcPlusPlus::SgfcStonePropertyValue LibSgfcPlusPlus::ISgfcGoStonePropertyValue LibSgfcPlusPlus::SgfcSinglePropertyValue LibSgfcPlusPlus::ISgfcStonePropertyValue LibSgfcPlusPlus::ISgfcStonePropertyValue LibSgfcPlusPlus::ISgfcSinglePropertyValue LibSgfcPlusPlus::ISgfcSinglePropertyValue LibSgfcPlusPlus::ISgfcSinglePropertyValue LibSgfcPlusPlus::ISgfcPropertyValue LibSgfcPlusPlus::ISgfcPropertyValue LibSgfcPlusPlus::ISgfcPropertyValue

Public Member Functions

 SgfcGoStonePropertyValue (std::shared_ptr< ISgfcGoStone > goStone)
 Initializes a newly constructed SgfcGoStonePropertyValue object. The object holds a Point value represented by goStone.
 
virtual ~SgfcGoStonePropertyValue ()
 Destroys and cleans up the SgfcGoStonePropertyValue object.
 
virtual const ISgfcGoStonePropertyValueToGoStoneValue () const override
 Returns an ISgfcGoStonePropertyValue object if the property value object was created specifically for SgfcGameType::Go. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual std::shared_ptr< ISgfcGoStoneGetGoStone () const override
 Returns an ISgfcGoStone object that contains the property value data.
 
- Public Member Functions inherited from LibSgfcPlusPlus::SgfcStonePropertyValue
 SgfcStonePropertyValue (const std::string &rawValue, const SgfcStone &stoneValue)
 Initializes a newly constructed SgfcStonePropertyValue object. The object holds the Stone value stoneValue and the corresponding raw string value rawValue.
 
virtual ~SgfcStonePropertyValue ()
 Destroys and cleans up the SgfcStonePropertyValue object.
 
virtual SgfcStone GetStoneValue () const override
 Returns the property value interpreted as an SgfcStone value.
 
virtual const ISgfcStonePropertyValueToStoneValue () const override
 Returns an ISgfcStonePropertyValue object if GetValueType() returns SgfcPropertyValueType::Stone. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
- Public Member Functions inherited from LibSgfcPlusPlus::SgfcSinglePropertyValue
 SgfcSinglePropertyValue (const std::string &rawValue)
 Initializes a newly constructed SgfcSinglePropertyValue object that has the raw property string value rawValue. The value type is SgfcPropertyValueType::Unknown, HasTypedValue() returns false and GetTypeConversionErrorMessage() returns an empty string.
 
 SgfcSinglePropertyValue (const std::string &rawValue, SgfcPropertyValueType valueType)
 Initializes a newly constructed SgfcSinglePropertyValue object that has the raw property string value rawValue and the value type valueType. HasTypedValue() returns true and GetTypeConversionErrorMessage() returns an empty string.
 
 SgfcSinglePropertyValue (const std::string &rawValue, SgfcPropertyValueType valueType, const std::string &typeConversionErrorMessage)
 Initializes a newly constructed SgfcSinglePropertyValue object that has the raw property string value rawValue and the value type valueType. HasTypedValue() returns false and GetTypeConversionErrorMessage() returns typeConversionErrorMessage.
 
virtual ~SgfcSinglePropertyValue ()
 Destroys and cleans up the SgfcSinglePropertyValue object.
 
virtual bool IsComposedValue () const override
 Returns true if the ISgfcPropertyValue object holds a "composed" value, i.e. a value that consists of a composite of two single values. Returns false if the ISgfcPropertyValue holds only a single value.
 
virtual const ISgfcSinglePropertyValueToSingleValue () const override
 Returns nullptr if IsComposedValue() returns true. Returns an ISgfcSinglePropertyValue object if IsComposedValue() returns false. The caller is not the owner of the ISgfcSinglePropertyValue object.
 
virtual SgfcPropertyValueType GetValueType () const override
 Returns the concrete type of the property value object. Depending on the value returned, a caller then knows which one of the convenience casting methods to use.
 
virtual bool HasTypedValue () const override
 Returns true if the raw string value returned by GetRawValue() is available as a typed value. Otherwise returns false.
 
virtual std::string GetTypeConversionErrorMessage () const override
 Returns an error message that describes why the raw string value returned by GetRawValue() could not be converted to the typed value returned by GetValueType().
 
virtual std::string GetRawValue () const override
 Returns the property value as a raw string, i.e. as close as possible as it appears in the original SGF content.
 
virtual const ISgfcNumberPropertyValueToNumberValue () const override
 Returns an ISgfcNumberPropertyValue object if GetValueType() returns SgfcPropertyValueType::Number. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual const ISgfcRealPropertyValueToRealValue () const override
 Returns an ISgfcRealPropertyValue object if GetValueType() returns SgfcPropertyValueType::Real. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual const ISgfcDoublePropertyValueToDoubleValue () const override
 Returns an ISgfcDoublePropertyValue object if GetValueType() returns SgfcPropertyValueType::Double. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual const ISgfcColorPropertyValueToColorValue () const override
 Returns an ISgfcColorPropertyValue object if GetValueType() returns SgfcPropertyValueType::Color. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual const ISgfcSimpleTextPropertyValueToSimpleTextValue () const override
 Returns an ISgfcSimpleTextPropertyValue object if GetValueType() returns SgfcPropertyValueType::SimpleText. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual const ISgfcTextPropertyValueToTextValue () const override
 Returns an ISgfcTextPropertyValue object if GetValueType() returns SgfcPropertyValueType::Text. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual const ISgfcPointPropertyValueToPointValue () const override
 Returns an ISgfcPointPropertyValue object if GetValueType() returns SgfcPropertyValueType::Point. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
virtual const ISgfcMovePropertyValueToMoveValue () const override
 Returns an ISgfcMovePropertyValue object if GetValueType() returns SgfcPropertyValueType::Move. Returns nullptr otherwise. The caller is not the owner of the returned object.
 
- Public Member Functions inherited from LibSgfcPlusPlus::ISgfcSinglePropertyValue
 ISgfcSinglePropertyValue ()
 Initializes a newly constructed ISgfcSinglePropertyValue object.
 
virtual ~ISgfcSinglePropertyValue ()
 Destroys and cleans up the ISgfcSinglePropertyValue object.
 
- Public Member Functions inherited from LibSgfcPlusPlus::ISgfcPropertyValue
 ISgfcPropertyValue ()
 Initializes a newly constructed ISgfcPropertyValue object.
 
virtual ~ISgfcPropertyValue ()
 Destroys and cleans up the ISgfcPropertyValue object.
 
virtual const ISgfcComposedPropertyValueToComposedValue () const
 Returns an ISgfcComposedPropertyValue object if IsComposedValue() returns true. Returns nullptr if IsComposedValue() returns false. The caller is not the owner of the ISgfcComposedPropertyValue object.
 
- Public Member Functions inherited from LibSgfcPlusPlus::ISgfcStonePropertyValue
 ISgfcStonePropertyValue ()
 Initializes a newly constructed ISgfcStonePropertyValue object.
 
virtual ~ISgfcStonePropertyValue ()
 Destroys and cleans up the ISgfcStonePropertyValue object.
 
- Public Member Functions inherited from LibSgfcPlusPlus::ISgfcGoStonePropertyValue
 ISgfcGoStonePropertyValue ()
 Initializes a newly constructed ISgfcGoStonePropertyValue object.
 
virtual ~ISgfcGoStonePropertyValue ()
 Destroys and cleans up the ISgfcGoStonePropertyValue object.
 

Detailed Description

The SgfcGoStonePropertyValue class provides an implementation of the ISgfcGoStonePropertyValue interface. See the interface header file for documentation.

Constructor & Destructor Documentation

◆ SgfcGoStonePropertyValue()

LibSgfcPlusPlus::SgfcGoStonePropertyValue::SgfcGoStonePropertyValue ( std::shared_ptr< ISgfcGoStone > goStone)

Initializes a newly constructed SgfcGoStonePropertyValue object. The object holds a Point value represented by goStone.

SgfcGoStonePropertyValue uses the SGF notation of the ISgfcGoPoint object referenced by goStone as the raw property value. This refers to the location of the stone on the board.

Exceptions
std::invalid_argumentIs thrown if goStone is nullptr.

Member Function Documentation

◆ GetGoStone()

std::shared_ptr< ISgfcGoStone > LibSgfcPlusPlus::SgfcGoStonePropertyValue::GetGoStone ( ) const
overridevirtual

Returns an ISgfcGoStone object that contains the property value data.

Implements LibSgfcPlusPlus::ISgfcGoStonePropertyValue.

◆ ToGoStoneValue()

const ISgfcGoStonePropertyValue * LibSgfcPlusPlus::SgfcGoStonePropertyValue::ToGoStoneValue ( ) const
overridevirtual

Returns an ISgfcGoStonePropertyValue object if the property value object was created specifically for SgfcGameType::Go. Returns nullptr otherwise. The caller is not the owner of the returned object.

Reimplemented from LibSgfcPlusPlus::SgfcStonePropertyValue.


The documentation for this class was generated from the following files: