Skyscraper 2.0
|
#include <section.h>
Public Member Functions | |
Section (ScriptProcessor *parent) | |
virtual | ~Section () |
virtual void | Reset () |
virtual int | Run (std::string &LineData) |
int | SplitData (const std::string &string, int start, bool calc=true) |
int | SplitAfterEquals (const std::string &string, bool calc=true) |
std::string | GetAfterEquals (const std::string &string, bool &found_equals) |
std::string | GetBeforeEquals (const std::string &string, bool calc=true) |
bool | GetRange (const std::string &string, int &start, int &end) |
int | ScriptError (std::string message, bool warning=false) |
int | ScriptError () |
int | ScriptWarning (std::string message) |
bool | IfProc (const std::string &expression) |
void | StoreCommand (SBS::Object *object) |
int | MathFunctions (std::string &LineData) |
::SBS::MeshObject * | GetMeshObject (std::string name) |
bool | GetElevatorCar (std::string &value, int floor, int &elevator, int &car) |
void | GetDirectionStrings (int direction, std::string &face_direction, std::string &open_direction) |
Protected Member Functions | |
std::string | Calc (const std::string &expression) |
Protected Attributes | |
ScriptProcessor * | parent |
SBS::SBS * | Simcore |
EngineContext * | engine |
std::vector< std::string > | tempdata |
bool | warn_deprecated |
ScriptProcessor::ConfigHandler * | config |
Friends | |
class | ScriptProcessor |
Skyscraper::ScriptProcessor::Section::Section | ( | ScriptProcessor * | parent | ) |
Definition at line 42 of file section.cpp.
References config, Skyscraper::HAL::configfile, engine, Skyscraper::HAL::GetConfigBool(), Skyscraper::ScriptProcessor::GetConfigHandler(), Skyscraper::ScriptProcessor::GetEngine(), Skyscraper::VM::GetHAL(), Skyscraper::EngineContext::GetSystem(), Skyscraper::EngineContext::GetVM(), parent, Simcore, and warn_deprecated.
|
inlinevirtual |
|
protected |
Definition at line 1030 of file section.cpp.
std::string Skyscraper::ScriptProcessor::Section::GetAfterEquals | ( | const std::string & | string, |
bool & | found_equals ) |
Definition at line 107 of file section.cpp.
References SBS::TrimString().
std::string Skyscraper::ScriptProcessor::Section::GetBeforeEquals | ( | const std::string & | string, |
bool | calc = true ) |
Definition at line 129 of file section.cpp.
References Skyscraper::ScriptProcessor::Calc(), Skyscraper::IsNumeric(), and SBS::TrimString().
void Skyscraper::ScriptProcessor::Section::GetDirectionStrings | ( | int | direction, |
std::string & | face_direction, | ||
std::string & | open_direction ) |
Definition at line 1254 of file section.cpp.
bool Skyscraper::ScriptProcessor::Section::GetElevatorCar | ( | std::string & | value, |
int | floor, | ||
int & | elevator, | ||
int & | car ) |
Definition at line 1198 of file section.cpp.
References SBS::Elevator::GetCar(), SBS::Elevator::GetCarForFloor(), SBS::SBS::GetElevator(), SBS::SBS::GetFloor(), Skyscraper::IsNumeric(), SBS::ElevatorCar::Number, Skyscraper::ScriptProcessor::ScriptError(), Skyscraper::ScriptProcessor::Simcore, SBS::ToInt(), SBS::ToString(), and SBS::TrimString().
MeshObject * Skyscraper::ScriptProcessor::Section::GetMeshObject | ( | std::string | name | ) |
Definition at line 1035 of file section.cpp.
References SBS::SBS::Buildings, SBS::Floor::ColumnFrame, Skyscraper::ScriptProcessor::config, Skyscraper::ScriptProcessor::ConfigHandler::Current, Skyscraper::ScriptProcessor::ConfigHandler::CurrentOld, SBS::SBS::External, SBS::Elevator::GetCar(), SBS::SBS::GetElevator(), SBS::SBS::GetFloor(), SBS::Shaft::GetLevel(), SBS::Stairwell::GetLevel(), SBS::Model::GetMeshObject(), SBS::Shaft::Level::GetMeshObject(), SBS::Stairwell::Level::GetMeshObject(), SBS::ElevatorCar::GetModel(), SBS::Floor::GetModel(), SBS::SBS::GetModel(), SBS::Shaft::Level::GetModel(), SBS::Stairwell::Level::GetModel(), SBS::SBS::GetShaft(), SBS::SBS::GetStairwell(), SBS::Floor::Interfloor, SBS::Model::IsCustom(), Skyscraper::IsNumeric(), SBS::SBS::Landscape, SBS::Floor::Level, SBS::ElevatorCar::Mesh, Skyscraper::ScriptProcessor::ConfigHandler::SectionNum, SBS::SetCase(), Skyscraper::ScriptProcessor::Simcore, and SBS::TrimString().
bool Skyscraper::ScriptProcessor::Section::GetRange | ( | const std::string & | string, |
int & | start, | ||
int & | end ) |
Definition at line 176 of file section.cpp.
References Skyscraper::IsNumeric(), Skyscraper::ScriptProcessor::ScriptError(), and SBS::TrimString().
bool Skyscraper::ScriptProcessor::Section::IfProc | ( | const std::string & | expression | ) |
Definition at line 217 of file section.cpp.
References Skyscraper::IsNumeric(), SBS::ReplaceAll(), Skyscraper::ScriptProcessor::ScriptError(), SBS::ToBool(), and SBS::ToFloat().
int Skyscraper::ScriptProcessor::Section::MathFunctions | ( | std::string & | LineData | ) |
Definition at line 430 of file section.cpp.
References Skyscraper::ScriptProcessor::Calc(), SBS::RandomGen::Get(), Skyscraper::IsNumeric(), Skyscraper::ScriptProcessor::LineData, SBS::Log2(), SBS::Round(), Skyscraper::ScriptProcessor::sContinue, Skyscraper::ScriptProcessor::ScriptError(), SBS::SetCaseCopy(), and SBS::ToString().
|
inlinevirtual |
Reimplemented in Skyscraper::ScriptProcessor::FloorSection.
Definition at line 35 of file section.h.
Referenced by Skyscraper::ScriptProcessor::Reset().
|
inlinevirtual |
Reimplemented in Skyscraper::ScriptProcessor::BuildingsSection, Skyscraper::ScriptProcessor::CallStationSection, Skyscraper::ScriptProcessor::CommandsSection, Skyscraper::ScriptProcessor::ControllerSection, Skyscraper::ScriptProcessor::ElevatorCarSection, Skyscraper::ScriptProcessor::ElevatorSection, Skyscraper::ScriptProcessor::FloorSection, Skyscraper::ScriptProcessor::GlobalsSection, Skyscraper::ScriptProcessor::TexturesSection, and Skyscraper::ScriptProcessor::VehicleSection.
int Skyscraper::ScriptProcessor::Section::ScriptError | ( | ) |
Definition at line 207 of file section.cpp.
int Skyscraper::ScriptProcessor::Section::ScriptError | ( | std::string | message, |
bool | warning = false ) |
Definition at line 202 of file section.cpp.
int Skyscraper::ScriptProcessor::Section::ScriptWarning | ( | std::string | message | ) |
Definition at line 212 of file section.cpp.
int Skyscraper::ScriptProcessor::Section::SplitAfterEquals | ( | const std::string & | string, |
bool | calc = true ) |
Definition at line 78 of file section.cpp.
References SBS::SplitString(), and SBS::TrimString().
int Skyscraper::ScriptProcessor::Section::SplitData | ( | const std::string & | string, |
int | start, | ||
bool | calc = true ) |
Definition at line 52 of file section.cpp.
References SBS::SplitString().
void Skyscraper::ScriptProcessor::Section::StoreCommand | ( | SBS::Object * | object | ) |
Definition at line 425 of file section.cpp.
|
friend |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |