Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/CNRECS.DEF
Original file line number Diff line number Diff line change
Expand Up @@ -5357,6 +5357,7 @@ RECORD DHWSOLARCOLLECTOR "DHWSolarCollector" *RAT // input / runtime DHW solar
RECORD PVARRAY "PVArray" *RAT // input / runtime photovoltaics array
*prefix pv_
*excon
*exdes
*ovrcopy
*declare "void FixUp();" // virtual fixup after basAnc reAl
*declare "RC Validate( int options=0);"
Expand Down
7 changes: 5 additions & 2 deletions src/geometry.h
Original file line number Diff line number Diff line change
Expand Up @@ -207,12 +207,15 @@ class CPolygon3D
{
public:
CPolygon3D( int n=4)
{ if (n>0)
{
if (n>0)
p3_vrt.reserve( n);
}
CPolygon3D( const CPolygon3D& p3)
: p3_vrt( p3.p3_vrt)
{ /* Copy( ptsAr); */ }
{
/* Copy( ptsAr); */
}
virtual ~CPolygon3D() { DeleteAll(); }
void DeleteAll() { p3_vrt.clear(); }
int GetSize() const { return static_cast<int>(p3_vrt.size()); }
Expand Down
5 changes: 5 additions & 0 deletions src/pvcalc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,17 @@ PVARRAY::PVARRAY( basAnc *b, TI i, SI noZ /*=0*/)
FixUp();
} // PVARRAY::PVARRAY
//-----------------------------------------------------------------------------
PVARRAY::~PVARRAY()
{
} // PVARRAY::~PVARRAY
//-----------------------------------------------------------------------------
/*virtual*/ void PVARRAY::FixUp() // set parent linkage
{ pv_g.gx_SetParent( this);
}
//-----------------------------------------------------------------------------
/*virtual*/ void PVARRAY::Copy( const record* pSrc, int options/*=0*/)
{ // bitwise copy of record
pv_g.~SURFGEOM(); // destroy SURFGEOM subobjects before bitwise overwrite
record::Copy( pSrc, options); // calls FixUp()
// copy SURFGEOM heap subobjects
pv_g.gx_CopySubObjects();
Expand Down
4 changes: 3 additions & 1 deletion src/shading.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -326,8 +326,9 @@ class SURFGEOMDET
{
friend SURFGEOM;
SURFGEOMDET( SURFGEOM* pSG) : gxd_pSG( pSG)
{}
{ }
SURFGEOMDET( SURFGEOM* pSG, const SURFGEOMDET& sgd);
~SURFGEOMDET() { }
bool gxd_IsEmpty() const // true iff no valid polygon
{ return gxd_uNorm.IsZero(); }

Expand Down Expand Up @@ -636,6 +637,7 @@ RC SHADEX::sx_Init() // init at run start
//----------------------------------------------------------------------------
void SHADEX::Copy( const record* pSrc, int options/*=0*/)
{ // bitwise copy of record
sx_g.~SURFGEOM(); // destroy SURFGEOM subobjects before bitwise overwrite
record::Copy( pSrc, options); // calls FixUp()
// copy SURFGEOM heap subobjects
sx_g.gx_CopySubObjects();
Expand Down