![]() |
VR-Forces Developer's Guide
|
Record of environment/weather settings Includes precipitation, air, and clouds.
Classes | |
| class | DtColorRecord |
| class | DtElevationalConfigurationRecord |
| class | DtElevationalWindRecord |
| class | DtThermoclineRecord |
Public Types | |
| typedef std::vector < DtCloudLayerRecord > | CloudLayerRecordList |
| typedef std::vector < DtThermoclineRecord > | ThermoclineRecordList |
| typedef std::vector < DtElevationalWindRecord > | ElevationalWindRecordList |
| typedef std::vector < DtElevationalConfigurationRecord > | ElevationalConfigurationRecordList |
| typedef std::map< std::string, std::string > | OptionalParameterMap |
Protected Member Functions | |
| virtual void | sortElevationalWindRecordsByBaseMSLAltitude () |
| virtual void | sortElevationalConfigurationRecordsByBaseMSLAltitude () |
| virtual void | copyOldWindSpecificElevationalConfigurationsToNewElevationalConfigurations () |
| template<class Archive > | |
| void | serialize (Archive &ar, const unsigned int version) |
Friends | |
| class | boost::serialization::access |
| typedef std::vector<DtCloudLayerRecord> makArchives::DtEnvironmentRecord::CloudLayerRecordList |
| typedef std::vector<DtThermoclineRecord> makArchives::DtEnvironmentRecord::ThermoclineRecordList |
| typedef std::vector<DtElevationalWindRecord> makArchives::DtEnvironmentRecord::ElevationalWindRecordList |
| typedef std::vector<DtElevationalConfigurationRecord> makArchives::DtEnvironmentRecord::ElevationalConfigurationRecordList |
| typedef std::map<std::string, std::string> makArchives::DtEnvironmentRecord::OptionalParameterMap |
| makArchives::DtEnvironmentRecord::DtEnvironmentRecord | ( | ) |
CTOR.
| makArchives::DtEnvironmentRecord::DtEnvironmentRecord | ( | const DtEnvironmentRecord & | orig | ) |
Copy CTOR.
|
virtual |
DTOR.
| void makArchives::DtEnvironmentRecord::swap | ( | DtEnvironmentRecord & | other | ) |
Swap data from this object with another.
| DtEnvironmentRecord& makArchives::DtEnvironmentRecord::operator= | ( | DtEnvironmentRecord | rhs | ) |
Assignment Operator.
| void makArchives::DtEnvironmentRecord::setEnvironmentName | ( | const std::string & | name | ) |
Set / Get the name for this environment.
| const std::string& makArchives::DtEnvironmentRecord::environmentName | ( | ) | const |
Set / Get the name for this environment.
| void makArchives::DtEnvironmentRecord::setIsLocalOnly | ( | bool | isLocalOnly | ) |
Set / Get whether or not this environment condition is a 'local-only' environment condition. This local-only environment condition flag is used by VR-Forces to determine if a given environment condition can be applied to a published local weather area. VR-Vantage supports the configuration of environment conditions that can be applied to the global environment to restrict which environment conditions the user can use and modify.
| bool makArchives::DtEnvironmentRecord::isLocalOnly | ( | ) | const |
Set / Get whether or not this environment condition is a 'local-only' environment condition. This local-only environment condition flag is used by VR-Forces to determine if a given environment condition can be applied to a published local weather area. VR-Vantage supports the configuration of environment conditions that can be applied to the global environment to restrict which environment conditions the user can use and modify.
| void makArchives::DtEnvironmentRecord::setAirTurbidity | ( | float | turbidity | ) |
Set / Get the air turbidity value.
| float makArchives::DtEnvironmentRecord::airTurbidity | ( | ) | const |
Set / Get the air turbidity value.
| void makArchives::DtEnvironmentRecord::setVisibleDistance | ( | float | distance | ) |
Set / Get the visible distance. Deprecated as of version 12, use setElevationalVisibilityDistance(...) and getElevationalVisibilityDistance(...) instead.
| float makArchives::DtEnvironmentRecord::visibleDistance | ( | ) | const |
Set / Get the visible distance. Deprecated as of version 12, use setElevationalVisibilityDistance(...) and getElevationalVisibilityDistance(...) instead.
| void makArchives::DtEnvironmentRecord::setPrecipitation | ( | int | type | ) |
Set / Get the type of precipitation.
| int makArchives::DtEnvironmentRecord::precipitation | ( | ) | const |
Set / Get the type of precipitation.
| void makArchives::DtEnvironmentRecord::setPrecipitationIntensity | ( | float | intensity | ) |
Set / Get intensity of precipitation in normalized values (0.0 - 1.0).
| float makArchives::DtEnvironmentRecord::precipitationIntensity | ( | ) | const |
Set / Get intensity of precipitation in normalized values (0.0 - 1.0).
| CloudLayerRecordList& makArchives::DtEnvironmentRecord::customCloudLayers | ( | ) |
Set / Get the the list of custom cloud layers. Deprecated.
| const CloudLayerRecordList& makArchives::DtEnvironmentRecord::customCloudLayers | ( | ) | const |
Set / Get the the list of custom cloud layers. Deprecated.
| void makArchives::DtEnvironmentRecord::setCloudCoverType | ( | DtCloudCoverType | cloudCoverType | ) |
Set / Get the cloud cover name. Deprecated as of version 1 of DtElevationalConfigurationRecord, use setElevationalCloudType(...) and getElevationalCloudType(...) instead.
| DtCloudCoverType makArchives::DtEnvironmentRecord::cloudCoverType | ( | ) | const |
Set / Get the cloud cover name. Deprecated as of version 1 of DtElevationalConfigurationRecord, use setElevationalCloudType(...) and getElevationalCloudType(...) instead.
|
virtual |
Set/Get whether or not lightning is present.
|
virtual |
Set/Get whether or not lightning is present.
| ElevationalConfigurationRecordList& makArchives::DtEnvironmentRecord::elevationalConfigurations | ( | ) |
Get the the list of elevational configurations.
| const ElevationalConfigurationRecordList& makArchives::DtEnvironmentRecord::elevationalConfigurations | ( | ) | const |
Get the the list of elevational configurations.
|
virtual |
Add an elevational configuration record to the environment record. The internal records are sorted by their base MSL altitude after the new record is added.
|
virtual |
Remove an elevational configuration record from the environment record by its index.
| bool makArchives::DtEnvironmentRecord::setElevationalConfigurationRecord | ( | unsigned int | index, |
| const DtElevationalConfigurationRecord & | wRec | ||
| ) |
Update an elevational configuration record by its index Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise.
| const DtElevationalConfigurationRecord* makArchives::DtEnvironmentRecord::getElevationalConfigurationRecord | ( | unsigned int | index | ) | const |
Get an elevational configuration record by its index, returned by const pointer.
| DtElevationalConfigurationRecord* makArchives::DtEnvironmentRecord::getElevationalConfigurationRecord | ( | unsigned int | index | ) |
Get an elevational configuration record by its index, returned by pointer.
| bool makArchives::DtEnvironmentRecord::setElevationalConfigurationBaseMSLAltitude | ( | unsigned int | index, |
| float | baseMSLAltitude | ||
| ) |
Set an elevational configuration record's base MSL altitude by its index. Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise. Altitude is expressed in meters. The internal records are sorted by their base MSL altitude after the elevational configuration record's base MSL altitude is updated.
| bool makArchives::DtEnvironmentRecord::getElevationalConfigurationBaseMSLAltitude | ( | unsigned int | index, |
| float & | baseMSLAltitude | ||
| ) | const |
Get an elevational configuration record's base MSL altitude by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Altitude is expressed in meters.
| bool makArchives::DtEnvironmentRecord::setElevationalWindSpeed | ( | unsigned int | index, |
| float | metersPerSecond | ||
| ) |
Set an elevational configuration record's wind speed by its index. Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise. Wind Speed is expressed in meters per second.
| bool makArchives::DtEnvironmentRecord::getElevationalWindSpeed | ( | unsigned int | index, |
| float & | windSpeed | ||
| ) | const |
Get an elevational configuration record's wind speed by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Wind Speed is expressed in meters per second.
| bool makArchives::DtEnvironmentRecord::setElevationalWindDirection | ( | unsigned int | index, |
| float | radiansFromNorth | ||
| ) |
Set an elevational configuration record's wind direction by its index. Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise. Wind direction is expressed in radians from True North (clockwise).
| bool makArchives::DtEnvironmentRecord::getElevationalWindDirection | ( | unsigned int | index, |
| float & | windDirection | ||
| ) | const |
Get an elevational configuration record's wind direction by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Wind direction is expressed in radians from True North (clockwise).
| bool makArchives::DtEnvironmentRecord::setElevationalVisibilityDistance | ( | unsigned int | index, |
| float | meters | ||
| ) |
Set an elevational configuration record's visibility distance by its index. Returns false if a elevational configuration record at the specified index does not exist, returns true otherwise. Visibility distance is expressed in meters.
| bool makArchives::DtEnvironmentRecord::getElevationalVisibilityDistance | ( | unsigned int | index, |
| float & | visibilityDistance | ||
| ) | const |
Get an elevational configuration record's visibility distance by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Visibility distance is expressed in meters.
| bool makArchives::DtEnvironmentRecord::setElevationalVisibilityObscurant | ( | unsigned int | index, |
| VisibilityObscurant | obscurant | ||
| ) |
Set an elevational configuration record's obscurant by its index. Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise. Obscurant is expressed as the VisibilityObscurant enumeration.
| bool makArchives::DtEnvironmentRecord::getElevationalVisibilityObscurant | ( | unsigned int | index, |
| VisibilityObscurant & | obscurant | ||
| ) | const |
Get an elevational configuration record's obscurant by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Obscurant is expressed as the VisibilityObscurant enumeration.
| bool makArchives::DtEnvironmentRecord::setElevationalCloudType | ( | unsigned int | index, |
| std::string | cloudTypeName | ||
| ) |
Set an elevational configuration record's cloud type by its index. Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise. Cloud type is expressed as a std::string representing the name of the type of cloud.
| bool makArchives::DtEnvironmentRecord::getElevationalCloudType | ( | unsigned int | index, |
| std::string & | cloudTypeName | ||
| ) | const |
Get an elevational configuration record's cloud type by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Cloud type is expressed as a std::string representing the name of the type of cloud.
| bool makArchives::DtEnvironmentRecord::setElevationalCloudDensity | ( | unsigned int | index, |
| float | cloudDensity | ||
| ) |
Set an elevational configuration record's cloud density by its index. Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise. Cloud density is expressed in kg/m^3. As of VRV 2.8, this property is not used. It is only used by VR-Forces.
| bool makArchives::DtEnvironmentRecord::getElevationalCloudDensity | ( | unsigned int | index, |
| float & | cloudDensity | ||
| ) | const |
Get an elevational configuration record's cloud density by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Cloud density is expressed in kg/m^3. As of VRV 2.8, this property is not used. It is only used by VR-Forces.
| bool makArchives::DtEnvironmentRecord::setElevationalSkyCoverage | ( | unsigned int | index, |
| float | cloudCoverage | ||
| ) |
Set an elevational configuration record's sky coverage by its index. Returns false if an elevational configuration record at the specified index does not exist, returns true otherwise. Sky coverage is expressed, in normalized Oktas [0-1] (which is what SilverLining expects).
| bool makArchives::DtEnvironmentRecord::getElevationalSkyCoverage | ( | unsigned int | index, |
| float & | cloudCoverage | ||
| ) | const |
Get an elevational configuration record's sky coverage by its index, returned by reference. The function returns true if an elevational configuration record at the specified index is found. False otherwise. Sky coverage is expressed, in normalized Oktas [0-1] (which is what SilverLining expects).
| void makArchives::DtEnvironmentRecord::setWindSpeed | ( | float | metersPerSecond | ) |
Set / Get the wind speed in meters per second. Deprecated as of version 11, use setElevationalWindSpeed(...) and getElevationalWindSpeed(...) instead.
| float makArchives::DtEnvironmentRecord::windSpeed | ( | ) | const |
Set / Get the wind speed in meters per second. Deprecated as of version 11, use setElevationalWindSpeed(...) and getElevationalWindSpeed(...) instead.
| void makArchives::DtEnvironmentRecord::setWindDirection | ( | float | radiansFromNorth | ) |
Set / Get the direction wind blows from in radians from North. Deprecated as of version 11, use setElevationalWindDirection(...) and getElevationalWindDirection(...) instead.
| float makArchives::DtEnvironmentRecord::windDirection | ( | ) | const |
Set / Get the direction wind blows from in radians from North. Deprecated as of version 11, use setElevationalWindDirection(...) and getElevationalWindDirection(...) instead.
| void makArchives::DtEnvironmentRecord::setAmbientAirTemperature | ( | float | kelvins | ) |
Set / Get the ambient air temperature, in Kelvins.
| float makArchives::DtEnvironmentRecord::ambientAirTemperature | ( | ) | const |
Set / Get the ambient air temperature, in Kelvins.
| void makArchives::DtEnvironmentRecord::setSeaState | ( | int | douglasScale | ) |
Set / Get the sea-state according to the Douglas Sea Scale.
| int makArchives::DtEnvironmentRecord::seaState | ( | ) | const |
Set / Get the sea-state according to the Douglas Sea Scale.
| void makArchives::DtEnvironmentRecord::setSeaStateDirection | ( | float | radiansFromNorth | ) |
Set / Get the direction waves travel from in radians from North.
| float makArchives::DtEnvironmentRecord::seaStateDirection | ( | ) | const |
Set / Get the direction waves travel from in radians from North.
| void makArchives::DtEnvironmentRecord::setWindDrivenSeaStateEnabled | ( | bool | enabled | ) |
Set / Get the flag for enabling sea-state to be driven by wind.
| bool makArchives::DtEnvironmentRecord::windDrivenSeaStateEnabled | ( | ) | const |
Set / Get the flag for enabling sea-state to be driven by wind.
| void makArchives::DtEnvironmentRecord::setSwellState | ( | int | douglasScale | ) |
Set / Get the sea-swell state according to the Douglas Sea Scale.
| int makArchives::DtEnvironmentRecord::swellState | ( | ) | const |
Set / Get the sea-swell state according to the Douglas Sea Scale.
| void makArchives::DtEnvironmentRecord::setSwellStateDirection | ( | float | radiansFromNorth | ) |
Set / Get the direction sea-swells travel from in radians from North.
| float makArchives::DtEnvironmentRecord::swellStateDirection | ( | ) | const |
Set / Get the direction sea-swells travel from in radians from North.
| void makArchives::DtEnvironmentRecord::setWindFetch | ( | float | meters | ) |
Set / Get the ocean fetch in distance.
| float makArchives::DtEnvironmentRecord::windFetch | ( | ) | const |
Set / Get the ocean fetch in distance.
| void makArchives::DtEnvironmentRecord::setSeaChoppiness | ( | float | chop | ) |
Set / Get the wave choppiness in normalized values (0.0 - 1.0).
| float makArchives::DtEnvironmentRecord::seaChoppiness | ( | ) | const |
Set / Get the wave choppiness in normalized values (0.0 - 1.0).
| void makArchives::DtEnvironmentRecord::setUnderwaterVisibilityEnabled | ( | bool | enabled | ) |
Set / Get underwater visibility enabled.
| bool makArchives::DtEnvironmentRecord::underwaterVisibilityEnabled | ( | ) | const |
Set / Get underwater visibility enabled.
| void makArchives::DtEnvironmentRecord::setUnderwaterVisibility | ( | float | meters | ) |
Set / Get the underwater visibility in distance.
| float makArchives::DtEnvironmentRecord::underwaterVisibility | ( | ) | const |
Set / Get the underwater visibility in distance.
| void makArchives::DtEnvironmentRecord::setSurfaceTransparency | ( | float | normalizedValue | ) |
Set / Get the surface transparency in normalized values (0.0 - 1.0).
| float makArchives::DtEnvironmentRecord::surfaceTransparency | ( | ) | const |
Set / Get the surface transparency in normalized values (0.0 - 1.0).
| void makArchives::DtEnvironmentRecord::setSurgeDepth | ( | float | meters | ) |
Set / Get the surge depth in distance.
| float makArchives::DtEnvironmentRecord::surgeDepth | ( | ) | const |
Set / Get the surge depth in distance.
| void makArchives::DtEnvironmentRecord::setDepthOffset | ( | float | meters | ) |
Set / Get the depth offset in distance.
| float makArchives::DtEnvironmentRecord::depthOffset | ( | ) | const |
Set / Get the depth offset in distance.
| void makArchives::DtEnvironmentRecord::setAmbientWaterTemperature | ( | float | kelvins | ) |
Set / Get the ambient water temperature, in Kelvins.
| float makArchives::DtEnvironmentRecord::ambientWaterTemperature | ( | ) | const |
Set / Get the ambient water temperature, in Kelvins.
| void makArchives::DtEnvironmentRecord::setWaterCurrentSpeed | ( | float | metersPerSecond | ) |
Set / Get the water-current speed in meters per second.
| float makArchives::DtEnvironmentRecord::waterCurrentSpeed | ( | ) | const |
Set / Get the water-current speed in meters per second.
| void makArchives::DtEnvironmentRecord::setWaterCurrentDirection | ( | float | radiansFromNorth | ) |
Set / Get the direction of water-currents in radians from North.
| float makArchives::DtEnvironmentRecord::waterCurrentDirection | ( | ) | const |
Set / Get the direction of water-currents in radians from North.
| void makArchives::DtEnvironmentRecord::setTidalOffset | ( | float | meters | ) |
Set / Get the tidal offset in distance.
| float makArchives::DtEnvironmentRecord::tidalOffset | ( | ) | const |
Set / Get the tidal offset in distance.
| void makArchives::DtEnvironmentRecord::setTidalDirection | ( | bool | inOut | ) |
Set / Get the tidal direction flag.
| bool makArchives::DtEnvironmentRecord::tidalDirection | ( | ) | const |
Set / Get the tidal direction flag.
| void makArchives::DtEnvironmentRecord::setFogHeight | ( | float | meters | ) |
Set / Get the fog height in distance.
| float makArchives::DtEnvironmentRecord::fogHeight | ( | ) | const |
Set / Get the fog height in distance.
| void makArchives::DtEnvironmentRecord::setFogColor | ( | const DtColorRecord & | color | ) |
Set / Get the fog color. Components are normalized values (0.0 - 1.0).
| const DtColorRecord& makArchives::DtEnvironmentRecord::fogColor | ( | ) | const |
Set / Get the fog color. Components are normalized values (0.0 - 1.0).
| void makArchives::DtEnvironmentRecord::setThermoclineRecord | ( | unsigned int | index, |
| const DtThermoclineRecord & | tRec | ||
| ) |
Set / Get a thermocline data.
| DtThermoclineRecord makArchives::DtEnvironmentRecord::thermoclineRecord | ( | unsigned int | index | ) | const |
Set / Get a thermocline data.
Set / Get a thermocline data.
Set / Get a thermocline data.
| void makArchives::DtEnvironmentRecord::setThermoclinePermeability | ( | unsigned int | index, |
| float | permeability | ||
| ) |
Set / Get a thermocline data.
Set / Get a thermocline data.
| void makArchives::DtEnvironmentRecord::setGroundSnowAccumulation | ( | float | depth | ) |
get/set the ground snow accumulation depth
| float makArchives::DtEnvironmentRecord::groundSnowAccumulation | ( | ) | const |
get/set the ground snow accumulation depth
| void makArchives::DtEnvironmentRecord::setRoadSnowAccumulation | ( | float | depth | ) |
get/set the road snow accumulation depth
| float makArchives::DtEnvironmentRecord::roadSnowAccumulation | ( | ) | const |
get/set the road snow accumulation depth
| void makArchives::DtEnvironmentRecord::setSnowMinimumElevation | ( | float | elevation | ) |
get/set the snow minimum elevation
| float makArchives::DtEnvironmentRecord::snowMinimumElevation | ( | ) | const |
get/set the snow minimum elevation
| void makArchives::DtEnvironmentRecord::setSnowElevationTransition | ( | float | elevation | ) |
get/set the snow elevation transition which specifies how long it takes to go from no snow to the full snow depth.
| float makArchives::DtEnvironmentRecord::snowElevationTransition | ( | ) | const |
get/set the snow elevation transition which specifies how long it takes to go from no snow to the full snow depth.
| void makArchives::DtEnvironmentRecord::setGroundRainAccumulation | ( | float | depth | ) |
get/set the ground rain accumulation depth
| float makArchives::DtEnvironmentRecord::groundRainAccumulation | ( | ) | const |
get/set the ground rain accumulation depth
| void makArchives::DtEnvironmentRecord::setAmbientAirPressure | ( | float | pressure | ) |
get/set the ambient air pressure
| float makArchives::DtEnvironmentRecord::ambientAirPressure | ( | ) | const |
get/set the ambient air pressure
| void makArchives::DtEnvironmentRecord::setAirPressureAltitude | ( | float | altitude | ) |
get/set the air pressure altitude
| float makArchives::DtEnvironmentRecord::airPressureAltitude | ( | ) | const |
get/set the air pressure altitude
| void makArchives::DtEnvironmentRecord::setAirTemperatureAltitude | ( | float | altitude | ) |
get/set the air temperature altitude
| float makArchives::DtEnvironmentRecord::airTemperatureAltitude | ( | ) | const |
get/set the air temperature altitude
| void makArchives::DtEnvironmentRecord::setAirPressureAltitudeIsSeaLevel | ( | bool | seaLevel | ) |
get/set the air pressure altitude is sea level
| bool makArchives::DtEnvironmentRecord::airPressureAltitudeIsSeaLevel | ( | ) | const |
get/set the air pressure altitude is sea level
| void makArchives::DtEnvironmentRecord::setAirTemperatureAltitudeIsSeaLevel | ( | bool | seaLevel | ) |
get/set the air temperature altitude is sea level
| bool makArchives::DtEnvironmentRecord::airTemperatureAltitudeIsSeaLevel | ( | ) | const |
get/set the air temperature altitude is sea level
| void makArchives::DtEnvironmentRecord::setSeaLevelWaterConcentration | ( | float | water | ) |
get/set the sea level water concentration
| float makArchives::DtEnvironmentRecord::seaLevelWaterConcentration | ( | ) | const |
get/set the sea level water concentration
|
virtual |
Find an optional parameter.
|
virtual |
Set an optional parameter.
|
virtual |
Set an optional parameters. This will overwrite any existing optional parameters.
|
virtual |
Remove an optional parameter.
| const OptionalParameterMap& makArchives::DtEnvironmentRecord::optionalParameters | ( | ) | const |
Get the optional parameters.
|
protectedvirtual |
Sorts the internal elevational wind records by their base MSL altitude. This function is used whenever a new elevational wind record is added or when a record's base MSL altitude is updated.
|
protectedvirtual |
Sorts the internal elevational configuration records by their base MSL altitude. This function is used whenever a new elevational configuration record is added or when a record's base MSL altitude is updated.
|
protectedvirtual |
Copy over myWindConfiguration to myElevationalConfigurations.
|
inlineprotected |
When the class Archive corresponds to an output archive, the & operator is defined similar to <<. Likewise, when the class Archive is a type of input archive the & operator is defined similar to >>.
|
friend |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |