#ifndef BLOCK_H_ #define BLOCK_H_ #include #include <../domain_and_range/DomainPoint.h> #include <../domain_and_range/RangePoint.h> class Block { public: int blockId; BlockType* blockType; int* varExtId; // {varId[j]} is the ID of the external variable // with index {j}, for {j} in {0..blockType.nExtVars-1}. // These variables may be shared with other blocks // an sub-blocks. // The internal variables of the block are identified implicitly // with an integer [i} in {0..blockType.nIntVars-1}. // All these variables // The connection between internal and external variables // is given bt the matrix {blockType.m}. public: Block(); virtual ~Block(); // Operations on blocks: RangePoint* evaluate(DomainPoint* U); }; #endif /*BLOCK_H_*/