54 boost::shared_ptr<FWItemAccessorBase> iAccessor,
61 m_accessor(iAccessor),
62 m_displayProperties(iDesc.displayProperties()),
63 m_layer(iDesc.layer()),
64 m_moduleLabel(iDesc.moduleLabel()),
65 m_productInstanceLabel(iDesc.productInstanceLabel()),
68 m_interestingValueGetter(edm::TypeWithDict(*(m_accessor->modelType()->GetTypeInfo())), m_purpose),
69 m_filter(iDesc.filterExpression(),
""),
70 m_printedErrorThisEvent(
false),
73 m_proxyBuilderConfig(0)
163 if(!visChange && !colorChanged && !transparencyChanged) {
175 bool changed =
false;
176 changed = visChange && vis;
184 if (transparencyChanged) {
215 std::vector<ModelInfo>::iterator itInfo =
m_itemInfos.begin();
218 bool changed =
false;
219 bool wasVisible = itInfo->m_displayProperties.isVisible();
221 itInfo->m_displayProperties.setIsVisible(
false);
222 changed = wasVisible==
true;
224 itInfo->m_displayProperties.setIsVisible(
true);
225 changed = wasVisible==
false;
234 std::cerr <<
"Exception occurred while running filter on "<<
name()<<
"\n"
235 <<iException.what()<<std::endl;
293 std::vector<ModelInfo>::iterator itInfo =
m_itemInfos.begin();
295 if( itInfo->m_displayProperties.isVisible() ) {
296 itInfo->m_displayProperties.setIsVisible(
false);
301 m_itemInfos.at(iIndex).m_displayProperties.setIsVisible(
true);
315 int largest =
layer();
320 if ((*it) && (*it !=
this) && (*it)->layer() > largest) {
321 largest= (*it)->layer();
325 if(largest >=
layer()) {
338 int smallest =
layer();
343 if((*it) && (*it !=
this) && (*it)->layer() < smallest) {
344 smallest= (*it)->layer();
348 if(smallest <=
layer()) {
420 std::ostringstream
s;
421 s <<
"Failed to get " <<
name() <<
" because \n" <<iException.what();
472 if((*it) && (*it !=
this) && (*it)->layer() >=
layer()) {
487 if((*it) && (*it !=
this) && (*it)->layer() <=
layer()) {
544 dp.setIsVisible(
false);
578 std::ostringstream
s;
579 size_t lastChar =
name().size();
581 if(
name()[lastChar-1]==
's') {
584 s<<
name().substr(0,lastChar)<<
" "<<iIndex;
bool passesFilter(const void *) const
FWItemChangeSignal preItemChanged_
const FWDisplayProperties & defaultDisplayProperties() const
void setColor(Color_t iColor)
FWModelChangeManager * changeManager() const
const FWDisplayProperties & displayProperties() const
void select(const FWModelId &iId)
const FWEventItemsManager * eventItemsManager() const
void moveToLayer(int layer)
std::string modelName(int iIndex) const
void setEvent(const edm::EventBase *iEvent)
const std::string & name() const
FWItemValueGetter m_interestingValueGetter
const FWGeometry * getGeom() const
void proxyConfigChanged()
void setDisplayProperties(int iIndex, const FWDisplayProperties &) const
const std::string & filterExpression() const
FWItemChangeSignal defaultDisplayPropertiesChanged_
bool haveInterestingValue() const
void getPrimaryData() const
void unselect(int iIndex) const
FWItemChangeSignal goingToBeDestroyed_
boost::shared_ptr< FWItemAccessorBase > m_accessor
const fireworks::Context * m_context
const std::string & expression() const
bool itemIsSelected() const
const std::string & processName() const
void setLabels(const std::string &iModule, const std::string &iProductInstance, const std::string &iProcess)
std::string m_moduleLabel
static int maxLayerValue()
const void * data(const std::type_info &) const
Char_t transparency() const
void setDefaultDisplayProperties(const FWDisplayProperties &)
const std::string & productInstanceLabel() const
std::string m_processName
void setClassName(const std::string &)
const TClass * type() const
FWProxyBuilderConfiguration * m_proxyBuilderConfig
void unselectItem(FWEventItem *)
void unselect(const FWModelId &iId)
void setData(const edm::ObjectWithDict &) const
const std::string & modelInterestingValueAsString(int iIndex) const
static int minLayerValue()
bool m_printedErrorThisEvent
bool hasError() const
returns true if failed to get data for this event
FWSelectionManager * selectionManager() const
void toggleSelect(int iIndex) const
void changed(const FWModelId &)
const_iterator begin() const
NOTE: iterator is allowed to return a null object for items that have been removed.
bool isInBack() const
returns true if item is behind all other items
void setExpression(const std::string &)
FWDisplayProperties m_displayProperties
bool isInFront() const
returns true if item is in front of all other items
void setFilterExpression(const std::string &)
void setTransparency(Char_t transparency)
FWEventItem(fireworks::Context *iContext, unsigned int iItemId, boost::shared_ptr< FWItemAccessorBase > iAccessor, const FWPhysicsObjectDesc &iDesc, const FWConfiguration *pbConf=0)
const edm::EventBase * m_event
std::string m_errorMessage
bool getByLabel(InputTag const &, Handle< T > &) const
bool isCollection() const
const TClass * modelType() const
const std::string & errorMessage() const
returns error string if there was a problem this event
std::vector< ModelInfo > m_itemInfos
const std::string & getToolTip(const void *iObject) const
void select(int iIndex) const
volatile std::atomic< bool > shutdown_flag false
const void * modelData(int iIndex) const
ModelInfo modelInfo(int iIndex) const
void setIsVisible(bool iSet)
const std::string & purpose() const
void setName(const std::string &iName)
std::vector< FWEventItem * >::const_iterator const_iterator
std::string m_productInstanceLabel
const FWGeometry * getGeom() const
const std::string & moduleLabel() const
void selectItem(FWEventItem *)
const_iterator end() const
FWItemChangeSignal filterChanged_