X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkAtomicBlackBox.h;h=0af4403a74a2487652ec71a99ca82f2218c8ec85;hb=dad2f344cba135eec67eba321b29ffd61975e9c9;hp=4422063beb4717db2932c9313e2ee85fee76b2c4;hpb=3fb0c5f4f00f86519c93413ab2386c47c5224345;p=bbtk.git diff --git a/kernel/src/bbtkAtomicBlackBox.h b/kernel/src/bbtkAtomicBlackBox.h index 4422063..0af4403 100644 --- a/kernel/src/bbtkAtomicBlackBox.h +++ b/kernel/src/bbtkAtomicBlackBox.h @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbtkAtomicBlackBox.h,v $ Language: C++ - Date: $Date: 2008/02/20 16:05:38 $ - Version: $Revision: 1.2 $ + Date: $Date: 2008/04/18 12:59:14 $ + Version: $Revision: 1.4 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -42,6 +42,11 @@ namespace bbtk { //================================================================== public: + //================================================================== + bbtk::BlackBoxDescriptor::Pointer bbGetDescriptor() const + { + return bbmDescriptorPointer; + } //================================================================== /// Gets the output Data of a given label Data bbGetOutput( const std::string &label ); @@ -59,8 +64,9 @@ namespace bbtk //================================================================== //================================================================== - /// Destructor - virtual ~AtomicBlackBox(); + std::string GetObjectInfo() const; + size_t GetObjectSize() const; + size_t GetObjectRecursiveSize() const; //================================================================== //================================================================== @@ -72,6 +78,17 @@ namespace bbtk AtomicBlackBox(AtomicBlackBox& from, const std::string &name, bool alloc = true); //================================================================== + //================================================================== + /// Destructor + virtual ~AtomicBlackBox(); + //================================================================== + + //================================================================== + protected: + virtual void bbLockDescriptor() = 0; + // private: + // virtual void bbReleaseDescriptor(); + //================================================================== public: //================================================================== @@ -85,7 +102,7 @@ namespace bbtk /// - updates its inputs by calling bbUpdateInputs (which recursively calls bbBackwardUpdate on upstream boxes) /// - calls bbProcess which here simply calls the user callback bbUserProcess which does the actual processing. /// bbProcess is overloaded in WxBlackBox to handle widget creation and show - IOStatus bbBackwardUpdate(Connection* caller); + virtual IOStatus bbBackwardUpdate(Connection::Pointer caller); //================================================================== //================================================================== @@ -126,6 +143,11 @@ namespace bbtk AtomicBlackBox() : BlackBox("") {} //================================================================== + protected: + //================================================================== + // The pointer on the descriptor + bbtk::BlackBoxDescriptor::Pointer bbmDescriptorPointer; + //================================================================== }; // Class AtomicBlackBox