PEBL 2.2
Psychology Experiment Building Language - Cross-platform psychological experiment development system
PList Class Reference

#include <PList.h>

Inheritance diagram for PList:
PEBLObjectBase

Public Member Functions

 PList ()
 Standard Constructor.
 
 PList (int reservedsize)
 
virtual ~PList ()
 Standard Destructor.
 
 PList (const PList &tmpList)
 Copy Constructor.
 
virtual PListClone ()
 Makes and returns a deep copy–notworking because copy makes deep copy anyway?
 
std::vector< Variant >::const_iterator Begin () const
 
std::vector< Variant >::const_iterator End () const
 
std::vector< Variant >::iterator Begin ()
 
std::vector< Variant >::iterator End ()
 
void PushBack (const Variant &v)
 
void PopBack ()
 
bool IsEmpty ()
 
void Clear ()
 
Variant First ()
 
Variant Rest ()
 
Variant Nth (unsigned int n)
 
Variant Last ()
 
counted_ptr< PEBLObjectBaseSortBy (const PList &key)
 
unsigned long Length () const
 
bool IsMember (Variant v)
 
void SetElement (unsigned int n, Variant value)
 
const std::vector< Variant > * GetList () const
 
- Public Member Functions inherited from PEBLObjectBase
 PEBLObjectBase ()
 Standard Constructor.
 
 PEBLObjectBase (ComplexDataType cdt)
 Standard Constructor.
 
 PEBLObjectBase (const PEBLObjectBase &pob)
 
virtual ~PEBLObjectBase ()
 Standard Destructor.
 
virtual bool InitializeProperty (std::string name, Variant v)
 
virtual bool SetProperty (std::string name, Variant v)
 
Variant GetProperty (std::string) const
 
virtual ObjectValidationError ValidateProperty (std::string, Variant v) const
 
virtual ObjectValidationError ValidateProperty (std::string) const
 
ComplexDataType GetType ()
 
virtual std::string ObjectName () const
 
virtual std::ostream & PrintProperties (std::ostream &out)
 
virtual Variant GetPropertyList ()
 

Protected Member Functions

std::ostream & SendToStream (std::ostream &out) const
 

Friends

std::ostream & operator<< (std::ostream &out, const PList &pcd)
 

Additional Inherited Members

- Protected Attributes inherited from PEBLObjectBase
ComplexDataType mCDT
 
std::map< std::string, VariantmProperties
 

Detailed Description

This class is a simple list of Variants. It is implemented as an STL list, but does not currently expose all of the STL list methods.

Definition at line 44 of file PList.h.

Constructor & Destructor Documentation

◆ PList() [1/3]

PList::PList ( )

Standard Constructor.

Definition at line 48 of file PList.cpp.

49{
50
51 // mCDT = CDT_LIST;
52}
@ CDT_LIST
Definition PEBLObject.h:56
PEBLObjectBase()
Standard Constructor.

Referenced by Clone(), and SortBy().

◆ PList() [2/3]

PList::PList ( int  reservedsize)

Definition at line 55 of file PList.cpp.

56{
57
58 mList.reserve((int)(reservedsize));
59}

◆ ~PList()

PList::~PList ( )
virtual

Standard Destructor.

Definition at line 109 of file PList.cpp.

110{
111
112}

◆ PList() [3/3]

PList::PList ( const PList tmpList)

Copy Constructor.

Copy constructor. Should make a deep copy.

Defunct code attempt: Using STL copy algorithm

Definition at line 63 of file PList.cpp.

64{
65
66
67 //mCDT=CDT_LIST;
68 const std::vector<Variant> * tmp = tmpList.GetList();
69
70 //Make an item-by-item copy of list into mList.
71 //Couldn't figure out how to use the stl copy algorithm to
72 //do this, so I will do it by hand.
74 // std::copy(tmp->begin(), tmp->end(), mList.begin());
75
76 std::vector<Variant>::const_iterator p;
77 for(p = tmp->begin(); p!=tmp->end(); p++)
78 {
79 mList.push_back(Variant(*p));
80 }
81
82}
const std::vector< Variant > * GetList() const
Definition PList.h:96

References GetList().

Member Function Documentation

◆ Begin() [1/2]

std::vector< Variant >::iterator PList::Begin ( )

Definition at line 115 of file PList.cpp.

116{
117 return mList.begin();
118}

◆ Begin() [2/2]

◆ Clear()

void PList::Clear ( )
inline

Definition at line 76 of file PList.h.

76{mList.clear();};

◆ Clone()

PList * PList::Clone ( )
virtual

Makes and returns a deep copy–notworking because copy makes deep copy anyway?

Cloner. This makes a item-for-item deep copy and returns a pointer to it.

Defunct code attempt: Using STL copy algorithm

Definition at line 86 of file PList.cpp.

87{
88
89 cout << "Cloning list\n";
90 PList * newlist = new PList();
91
92 //Make an item-by-item copy of list into mList.
93 //Couldn't figure out how to use the stl copy algorithm to
94 //do this, so I will do it by hand.
96 // std::copy(tmp->begin(), tmp->end(), mList.begin());
97
98 std::vector<Variant>::iterator p;
99 for(p = mList.begin(); p!=mList.end(); p++)
100 {
101 // This does not work. Need to make the contained list and then embed it.
102 // newlist->push_back(Variant(*p));
103 }
104
105 return newlist;
106}
Definition PList.h:45
PList()
Standard Constructor.
Definition PList.cpp:48

References PList().

◆ End() [1/2]

std::vector< Variant >::iterator PList::End ( )

Definition at line 120 of file PList.cpp.

121{
122 return mList.end();
123}

◆ End() [2/2]

◆ First()

Variant PList::First ( )

Definition at line 169 of file PList.cpp.

170{
171 if(mList.empty())
172 PError::SignalFatalError("Attempting to get First() element of empty list.");
173
174 return mList.front();
175
176}
void SignalFatalError(const std::string &message)

References PError::SignalFatalError().

Referenced by PEBLMath::Abs(), PEBLMath::AbsFloor(), PEBLMath::ACos(), PEBLObjects::AddObject(), PEBLList::Append(), PEBLStream::AppendFile(), PEBLMath::ASin(), PEBLMath::ATan(), PEBLObjects::Bezier(), Evaluator::CallFunction(), PEBLEnvironment::CallFunction(), PEBLMath::Ceiling(), PEBLEnvironment::CheckProcessStatus(), PEBLObjects::Circle(), PEBLStream::CopyFile(), PEBLEnvironment::CopyToClipboard(), PEBLString::CopyToClipboard(), PEBLMath::Cos(), PEBLList::CrossFactorWithoutDuplicates(), PEBLMath::DegToRad(), PEBLEnvironment::DeleteFile(), PEBLList::DesignFullCounterbalance(), PEBLString::DetectTextScript(), PEBLObjects::Draw(), PEBLObjects::DrawFor(), PEBLObjects::Ellipse(), PEBLStream::EndOfFile(), PEBLStream::EndOfLine(), Evaluator::Evaluate1(), PEBLEnvironment::ExitQuietly(), PEBLMath::Exp(), PEBLList::Fifth(), PEBLStream::FileClose(), PEBLEnvironment::FileExists(), PEBLStream::FileOpenAppend(), PEBLStream::FileOpenOverwrite(), PEBLStream::FileOpenRead(), PEBLStream::FileOpenWrite(), PEBLStream::FilePrint(), PEBLStream::FilePrint_(), PEBLStream::FileReadCharacter(), PEBLStream::FileReadLine(), PEBLStream::FileReadList(), PEBLStream::FileReadTable(), PEBLStream::FileReadText(), PEBLStream::FileReadWord(), PEBLString::FindInString(), PEBLList::First(), PEBLMath::Floor(), PEBLStream::Format(), PEBLList::Fourth(), PEBLObjects::GetAudioStats(), PEBLObjects::GetCursorPosition(), PEBLEnvironment::GetDirectoryListing(), PEBLObjects::GetEyeObject(), PEBLString::GetFontForText(), PEBLEnvironment::GetInput0(), PEBLEnvironment::GetJoystick(), PEBLEnvironment::GetJoystickAxisState(), PEBLEnvironment::GetJoystickBallState(), PEBLEnvironment::GetJoystickButtonState(), PEBLEnvironment::GetJoystickHatState(), PEBLObjects::GetLineBreaks(), PEBLEnvironment::GetNumJoystickAxes(), PEBLEnvironment::GetNumJoystickBalls(), PEBLEnvironment::GetNumJoystickButtons(), PEBLEnvironment::GetNumJoystickHats(), PEBLEnvironment::GetObjectTime(), PEBLObjects::GetParent(), PEBLObjects::GetPixelColor(), PEBLObjects::GetProperty(), PEBLObjects::GetPropertyList(), PEBLObjects::GetSize(), PEBLObjects::GetText(), PEBLEnvironment::GetTextBoxCursorFromClick(), PEBLEnvironment::GetVideoModes(), PEBLObjects::GetVocalResponseTime(), PEBLObjects::Hide(), PEBLEnvironment::IsAudioOut(), PEBLEnvironment::IsCanvas(), PEBLEnvironment::IsColor(), PEBLEnvironment::IsCustomObject(), PEBLEnvironment::IsDirectory(), PEBLEnvironment::IsFileStream(), PEBLEnvironment::IsFloat(), PEBLEnvironment::IsFont(), PEBLEnvironment::IsImage(), PEBLEnvironment::IsInteger(), PEBLEnvironment::IsJoystick(), PEBLEnvironment::IsKeyDown(), PEBLEnvironment::IsKeyUp(), PEBLEnvironment::IsLabel(), PEBLEnvironment::IsList(), PEBLList::IsMember(), PEBLEnvironment::IsNumber(), PEBLEnvironment::IsPEBLObject(), PEBLString::IsRTL(), PEBLEnvironment::IsShape(), PEBLEnvironment::IsString(), PEBLEnvironment::IsText(), PEBLEnvironment::IsTextBox(), PEBLEnvironment::IsWidget(), PEBLEnvironment::IsWindow(), PEBLList::Last(), PEBLEnvironment::LaunchFile(), PEBLList::Length(), PEBLObjects::Line(), PEBLList::ListToString(), PEBLMath::Ln(), PEBLObjects::LoadAudioFile(), PEBLObjects::LoadMovie(), PEBLObjects::LoadSound(), PEBLMath::Log10(), PEBLMath::Log2(), PEBLMath::LogN(), PEBLString::Lowercase(), PEBLObjects::MakeAudioInputBuffer(), PEBLObjects::MakeCanvas(), PEBLObjects::MakeColor(), PEBLObjects::MakeColorRGB(), PEBLObjects::MakeCustomObject(), PEBLEnvironment::MakeDirectory(), PEBLObjects::MakeFont(), PEBLObjects::MakeImage(), PEBLObjects::MakeLabel(), PEBLObjects::MakeSineWave(), PEBLObjects::MakeTextBox(), PEBLObjects::MakeWindow(), PEBLStream::MD5File(), PEBLStream::MD5Sum(), PEBLList::Merge(), PEBLMath::Mod(), PEBLList::ModList(), PEBLObjects::Move(), PEBLList::Nth(), PEBLMath::NthRoot(), PEBLStream::ParseJSON(), PEBLObjects::PausePlayback(), PEBLInterpret(), PEBLObjects::PlayBackground(), PEBLObjects::PlayForeground(), PEBLEnvironment::PlayMovie(), PEBLObjects::Polygon(), PEBLMath::Pow(), PEBLStream::Print(), PEBLStream::Print_(), PEBLObjects::PrintProperties(), PEBLObjects::PropertyExists(), PEBLList::PushOnEnd(), PEBLMath::RadToDeg(), PEBLMath::RandomBernoulli(), PEBLMath::RandomBinomial(), PEBLMath::RandomDiscrete(), PEBLMath::RandomExponential(), PEBLMath::RandomLogNormal(), PEBLMath::RandomNormal(), PEBLMath::RandomUniform(), PEBLObjects::RecordToBuffer(), PEBLObjects::Rectangle(), PEBLString::RegexMatch(), PEBLEnvironment::RegisterEvent(), PEBLObjects::RemoveObject(), PEBLList::Repeat(), PEBLList::RepeatList(), PEBLObjects::ResizeWindow(), PEBLList::Rotate(), PEBLObjects::RotoZoom(), PEBLMath::Round(), PEBLObjects::SaveAudioToWaveFile(), PEBLList::Second(), PEBLMath::SeedRNG(), PEBLList::Sequence(), PEBLEnvironment::SetCursorPosition(), PEBLObjects::SetCursorPosition(), PEBLObjects::SetEditable(), PEBLList::SetElement(), PEBLObjects::SetEyeTrackerHandler(), PEBLObjects::SetFont(), PEBLObjects::SetPanning(), PEBLObjects::SetPlayRepeats(), PEBLObjects::SetPoint(), PEBLObjects::SetProperty(), PEBLObjects::SetText(), PEBLEnvironment::SetWorkingDirectory(), PEBLObjects::Show(), PEBLEnvironment::ShowCursor(), PEBLList::Shuffle(), PEBLMath::Sign(), PEBLEnvironment::SignalFatalError(), PEBLMath::Sin(), PEBLList::Sort(), PEBLList::SortBy(), PEBLString::SplitString(), PEBLMath::Sqrt(), PEBLObjects::Square(), PEBLObjects::StartAudioMonitor(), PEBLObjects::StartPlayback(), PEBLObjects::Stop(), PEBLObjects::StopAudioMonitor(), PEBLString::StringLength(), PEBLList::SubList(), PEBLString::SubString(), PEBLEnvironment::SystemCall(), PEBLMath::Tan(), PEBLObjects::ThickLine(), PEBLList::Third(), PEBLString::ToASCII(), PEBLMath::ToFloat(), PEBLMath::ToInt(), PEBLMath::ToNumber(), PEBLMath::ToString(), PEBLEnvironment::TranslateKeyCode(), PEBLEnvironment::TranslateString(), PEBLList::Transpose(), PEBLString::Uppercase(), PEBLEnvironment::VariableExists(), PEBLEnvironment::Wait(), PEBLEnvironment::WaitForAnyKeyDownWithTimeout(), PEBLEnvironment::WaitForAnyKeyPressWithTimeout(), PEBLEnvironment::WaitForKeyDown(), PEBLEnvironment::WaitForKeyListDown(), PEBLEnvironment::WaitForKeyPress(), PEBLEnvironment::WaitForKeyRelease(), PEBLEnvironment::WaitForKeyUp(), PEBLEnvironment::WaitForListKeyPress(), PEBLEnvironment::WaitForListKeyPressWithTimeout(), PEBLEnvironment::WaitForMouseButtonWithTimeout(), and PEBLStream::WritePNG().

◆ GetList()

const std::vector< Variant > * PList::GetList ( ) const
inline

Definition at line 96 of file PList.h.

96{return &mList;};

Referenced by PList().

◆ IsEmpty()

bool PList::IsEmpty ( )
inline

Definition at line 74 of file PList.h.

74{return mList.empty();};

◆ IsMember()

bool PList::IsMember ( Variant  v)

◆ Last()

Variant PList::Last ( )

Definition at line 235 of file PList.cpp.

236{
237 //This is messed up--need a NULL variant type
238 //or error codes etc.
239 if(mList.empty())
240 PError::SignalFatalError("Attempting to get last element element of empty list.");
241
242
243 std::vector<Variant>::iterator p = mList.end();
244 p--;
245 return *p;
246}

References PError::SignalFatalError().

Referenced by PEBLList::Last().

◆ Length()

◆ Nth()

Variant PList::Nth ( unsigned int  n)

Definition at line 181 of file PList.cpp.

182{
183 //This is messed up--need a NULL variant type
184 //or error codes etc.
185 if(mList.size() < n)
186 PError::SignalFatalError("Attempting to get Nth element element of too-short list.");
187 if(n==0)
188 PError::SignalFatalError("Attempting to get 0th element element of too-short list.");
189
190 //std::vector<Variant>::iterator p = mList[n];
191 //.begin();
192 // for(unsigned int i = 1; i< n; i++,p++);
193 //return *p;
194
195 //Note: this is 1-indexed, so 1 is 0, etc.
196 return mList[n-1];
197}

References PError::SignalFatalError().

Referenced by PEBLObjects::AddObject(), PEBLList::Append(), PEBLStream::AppendFile(), PEBLObjects::Bezier(), PEBLEnvironment::CallFunction(), PEBLObjects::Circle(), PEBLStream::CopyFile(), PEBLList::DesignFullCounterbalance(), PEBLObjects::DrawFor(), PEBLObjects::Ellipse(), Evaluator::Evaluate1(), PEBLEnvironment::ExitQuietly(), PEBLList::Fifth(), PEBLStream::FilePrint(), PEBLStream::FilePrint_(), PEBLStream::FileReadTable(), PEBLString::FindInString(), PEBLList::Fourth(), PEBLObjects::GetAudioStats(), PEBLString::GetFontForText(), PEBLEnvironment::GetInput0(), PEBLEnvironment::GetJoystickAxisState(), PEBLEnvironment::GetJoystickBallState(), PEBLEnvironment::GetJoystickButtonState(), PEBLEnvironment::GetJoystickHatState(), PEBLObjects::GetPixelColor(), PEBLObjects::GetProperty(), PEBLEnvironment::GetTextBoxCursorFromClick(), PEBLObjects::GetVocalResponseTime(), PEBLList::IsMember(), PEBLObjects::Line(), PEBLList::ListToString(), PEBLObjects::LoadMovie(), PEBLMath::LogN(), PEBLObjects::MakeCanvas(), PEBLObjects::MakeColorRGB(), PEBLObjects::MakeFont(), PEBLObjects::MakeLabel(), PEBLObjects::MakeSineWave(), PEBLObjects::MakeTextBox(), PEBLObjects::MakeWindow(), PEBLList::Merge(), PEBLMath::Mod(), PEBLList::ModList(), PEBLObjects::Move(), PEBLList::Nth(), PEBLMath::NthRoot(), PEBLInterpret(), PEBLObjects::Polygon(), PEBLMath::Pow(), PEBLObjects::PropertyExists(), PEBLList::PushOnEnd(), PEBLMath::RandomBinomial(), PEBLMath::RandomLogNormal(), PEBLMath::RandomNormal(), PEBLObjects::RecordToBuffer(), PEBLObjects::Rectangle(), PEBLString::RegexMatch(), PEBLEnvironment::RegisterEvent(), PEBLObjects::RemoveObject(), PEBLList::Repeat(), PEBLList::RepeatList(), PEBLObjects::ResizeWindow(), PEBLList::Rotate(), PEBLObjects::RotoZoom(), PEBLMath::Round(), PEBLObjects::SaveAudioToWaveFile(), PEBLList::Second(), PEBLList::Sequence(), PEBLEnvironment::SetCursorPosition(), PEBLObjects::SetCursorPosition(), PEBLObjects::SetEditable(), PEBLList::SetElement(), PEBLObjects::SetEyeTrackerHandler(), PEBLObjects::SetFont(), PEBLObjects::SetPanning(), PEBLObjects::SetPlayRepeats(), PEBLObjects::SetPoint(), PEBLObjects::SetProperty(), PEBLObjects::SetText(), PEBLList::SortBy(), PEBLString::SplitString(), PEBLObjects::Square(), PEBLList::SubList(), PEBLString::SubString(), PEBLEnvironment::SystemCall(), PEBLEnvironment::SystemCallUpdate(), PEBLObjects::ThickLine(), PEBLList::Third(), PEBLEnvironment::WaitForListKeyPressWithTimeout(), and PEBLStream::WritePNG().

◆ PopBack()

void PList::PopBack ( )

Definition at line 162 of file PList.cpp.

163{
164 mList.pop_back();
165}

◆ PushBack()

void PList::PushBack ( const Variant v)

Definition at line 149 of file PList.cpp.

150{
151
152 //Let's try to reduce time overhead by expanding using reserve to 50% larger than the current list.
153 //which is really a std::vector
154 if(mList.capacity() < mList.size()+1)
155 {
156 //increase reserve capacity by 25%
157 mList.reserve((int)(mList.size()*1.25));
158 }
159 mList.push_back(v);
160}

Referenced by PEBLList::Append(), PEBLList::CrossFactorWithoutDuplicates(), PEBLList::DesignFullCounterbalance(), Evaluator::Evaluate(), Evaluator::Evaluate1(), PEBLUtility::ExtractJSONObject(), PEBLStream::FileReadList(), PEBLStream::FileReadTable(), PEBLObjects::GetAudioStats(), PlatformJoystick::GetBallState(), SDLUtility::GetCurrentScreenResolution(), PEBLEnvironment::GetCurrentScreenResolution(), PlatformEnvironment::GetCursorPosition(), PEBLUtility::GetDirectoryListing(), SDLUtility::GetDriverList(), PEBLStream::GetHTTPText(), PlatformTextBox::GetLineBreaks(), PlatformEnvironment::GetMouseState(), PEBLObjectBase::GetPropertyList(), PCustomObject::GetPropertyList(), PlatformEnvironment::GetScreenModes(), PEBLObjects::GetSize(), PEventLoop::Loop1(), PEBLList::Merge(), PEvent::operator Variant(), PEBLInterpret(), PEBLList::PushOnEnd(), PEBLMath::Recurse(), PEBLMath::Recurse2(), PEBLList::Repeat(), PEBLList::RepeatList(), PEBLList::Rotate(), PEBLList::Sequence(), PEBLList::Shuffle(), SortBy(), PEBLEnvironment::StartEventLoop(), PEBLList::SubList(), PEBLUtility::Tokenize(), PEBLList::Transpose(), PEBLEnvironment::WaitForMouseButton(), and PEBLEnvironment::WaitForMouseButtonWithTimeout().

◆ Rest()

Variant PList::Rest ( )

◆ SendToStream()

ostream & PList::SendToStream ( std::ostream &  out) const
protectedvirtual

This is used by the friend function of PComplex Data <<, which calls the inheritable function SendToStream(). It just spits out the items of the list with spaces as separators. Since the items are variants, it uses the overloaded << operator for variants.

Reimplemented from PEBLObjectBase.

Definition at line 305 of file PList.cpp.

306{
307 std::vector<Variant>::const_iterator p;
308 p = mList.begin();
309
310 out << "[" ;
311 //out << this->Length() << ":";
312
313 //Print out the first item, so comma-ing works out ok.
314 if( p != mList.end())
315 {
316 out << *p ;
317 p++;
318 while(p != mList.end())
319 {
320 //send each item to stream with space and comma in between.
321 out << ", " << *p << flush;
322 p++;
323 }
324 }
325 out << "]" ;
326
327 return out;
328}

◆ SetElement()

void PList::SetElement ( unsigned int  n,
Variant  value 
)

Definition at line 222 of file PList.cpp.

223{
224
225 //This is messed up--need a NULL variant type
226 //or error codes etc.
227 if(mList.size() < n)
228 PError::SignalFatalError("Attempting to get Nth element element of too-short list.");
229 if(n==0)
230 PError::SignalFatalError("Attempting to get 0th element element of too-short list.");
231 mList[n-1] = value;
232
233}

References PError::SignalFatalError().

Referenced by PEBLList::SetElement().

◆ SortBy()

counted_ptr< PEBLObjectBase > PList::SortBy ( const PList key)

This sorts the member list by the values in another list. It does this by making a multiset, which is implicitly sorted, and then making the map back into a list.

Definition at line 253 of file PList.cpp.

254{
255 //This is the map that the variant pairs will be put into
256 multimap<Variant, Variant> sortMap;
257
258 //Iterators for the key/data lists. Woe to he who allows
259 //these to be of different sizes.
260 std::vector<Variant>::const_iterator keyIterator = key.Begin();
261 std::vector<Variant>::const_iterator dataIterator = Begin();
262
263 //Go through the entire data list, inserting pairs into the map.
264 while(dataIterator != End())
265 {
266 sortMap.insert( pair<Variant,Variant>(*keyIterator, *dataIterator));
267 keyIterator++; //move through both lists.
268 dataIterator++;
269 }
270
271
272 //Now, sortmap should be in order of keyIterator. Make
273 //a new PList to put the data in.
274 PList * newList = new PList();
275
276 multimap<Variant, Variant>::iterator i=sortMap.begin();
277
278 while(i != sortMap.end())
279 {
280 newList->PushBack(i->second);
281 i++;
282 }
283 return counted_ptr<PEBLObjectBase>(newList);
284}
std::vector< Variant >::const_iterator End() const
Definition PList.cpp:132
std::vector< Variant >::const_iterator Begin() const
Definition PList.cpp:127
void PushBack(const Variant &v)
Definition PList.cpp:149

References Begin(), End(), PList(), and PushBack().

Referenced by PEBLList::Shuffle(), PEBLList::Sort(), and PEBLList::SortBy().

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  out,
const PList pcd 
)
friend

Definition at line 293 of file PList.cpp.

294{
295 list.SendToStream(out);
296 return out;
297}

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